Index: code/branches/fabienHS15/data/levels/FPS_Level_HS14.oxw
===================================================================
--- code/branches/fabienHS15/data/levels/FPS_Level_HS14.oxw	(revision 10813)
+++ code/branches/fabienHS15/data/levels/FPS_Level_HS14.oxw	(revision 10814)
@@ -67,6 +67,6 @@
         maxshieldhealth     = "50"
         shieldabsorption    = "0.8"
-        reloadrate          = "100"
-        reloadwaittime      = "0.1"
+        shieldrechargerate  = "100"
+        shieldrechargewaittime = "0.1"
         name                = "Tanis1"
         radarname           = "Light Destroyer" >
@@ -197,6 +197,6 @@
         maxshieldhealth     = "200"
         shieldabsorption    = "0.8"
-        reloadrate          = "1"
-        reloadwaittime      = "1"
+        shieldrechargerate  = "1"
+        shieldrechargewaittime = "1"
         name                = "Tanis0"
         radarname           = "Tanis big ship" >
@@ -216,6 +216,6 @@
         maxshieldhealth     = "50"
         shieldabsorption    = "0.8"
-        reloadrate          = "1"
-        reloadwaittime      = "1"
+        shieldrechargerate  = "1"
+        shieldrechargewaittime = "1"
         name                = "Tanis0"
         radarname           = "Pirate1" >
@@ -239,6 +239,6 @@
         maxshieldhealth     = "50"
         shieldabsorption    = "0.8"
-        reloadrate          = "1"
-        reloadwaittime      = "1"
+        shieldrechargerate  = "1"
+        shieldrechargewaittime = "1"
         name                = "Tanis0"
         radarname           = "Pirate2" >
Index: code/branches/fabienHS15/data/levels/iJohnVane_TriptoArea51.oxw
===================================================================
--- code/branches/fabienHS15/data/levels/iJohnVane_TriptoArea51.oxw	(revision 10813)
+++ code/branches/fabienHS15/data/levels/iJohnVane_TriptoArea51.oxw	(revision 10814)
@@ -169,6 +169,6 @@
         maxshieldhealth     = "120"
         shieldabsorption    = "0.8"
-        reloadrate          = "1"
-        reloadwaittime      = "1"
+        shieldrechargerate  = "1"
+        shieldrechargewaittime = "1"
         name                = "cruiser"
         radarname           = "Spacecruiser" >
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsAssff.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsAssff.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsAssff.oxi	(revision 10814)
@@ -40,5 +40,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=8 />
         </Weapon>
       </WeaponPack>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsAssff2.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsAssff2.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsAssff2.oxi	(revision 10814)
@@ -38,5 +38,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" damage=50 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=100 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=100 fuel=10 />
         </Weapon>
       </WeaponPack>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsCollateral.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsCollateral.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsCollateral.oxi	(revision 10814)
@@ -42,5 +42,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=10 />
         </Weapon>
       </WeaponPack>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsFS15.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsFS15.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsFS15.oxi	(revision 10814)
@@ -38,5 +38,5 @@
       <GravityBombFire mode=2 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
       <RocketFireOld mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
-      <RocketFire mode=4 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+      <RocketFire mode=4 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=10 />
     </Weapon>
   </WeaponPack>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsHeartAttack.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsHeartAttack.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsHeartAttack.oxi	(revision 10814)
@@ -34,5 +34,5 @@
           <LaserFire mode=1 munitionpershot=1 muzzleoffset="2.2,6,16" damage=30 shielddamage=20 />
           <LaserFire mode=1 munitionpershot=1 muzzleoffset="-2.2,6,16" damage=30 shielddamage=20 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=10 />
           <GravityBombFire mode=2 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
         </Weapon>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsHeavyCruiser.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsHeavyCruiser.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsHeavyCruiser.oxi	(revision 10814)
@@ -40,5 +40,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=10 />
         </Weapon>
       </WeaponPack>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsHeavyCruiserBody.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsHeavyCruiserBody.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsHeavyCruiserBody.oxi	(revision 10814)
@@ -34,5 +34,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=10 />
         </Weapon>
       </WeaponPack>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsImmTest.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsImmTest.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsImmTest.oxi	(revision 10814)
@@ -44,5 +44,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" shielddamage=50 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" healthdamage=80 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" healthdamage=80 shielddamage=20 fuel=10 />
         </Weapon>
       </WeaponPack>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsSpacecruiser.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsSpacecruiser.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsSpacecruiser.oxi	(revision 10814)
@@ -44,5 +44,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=10 />
         </Weapon>
         <Weapon>
Index: code/branches/fabienHS15/data/levels/includes/weaponSettingsbigship.oxi
===================================================================
--- code/branches/fabienHS15/data/levels/includes/weaponSettingsbigship.oxi	(revision 10813)
+++ code/branches/fabienHS15/data/levels/includes/weaponSettingsbigship.oxi	(revision 10814)
@@ -35,5 +35,5 @@
         <Weapon>
           <SimpleRocketFire mode=2 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
-          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 />
+          <RocketFire mode=3 muzzleoffset="0,0,0" damage=30 healthdamage=50 shielddamage=20 fuel=10 />
         </Weapon>
       </WeaponPack>
Index: code/branches/fabienHS15/data/levels/missionOne.oxw
===================================================================
--- code/branches/fabienHS15/data/levels/missionOne.oxw	(revision 10813)
+++ code/branches/fabienHS15/data/levels/missionOne.oxw	(revision 10814)
@@ -1080,6 +1080,6 @@
         maxshieldhealth     = "120"
         shieldabsorption    = "0.8"
-        reloadrate          = "1"
-        reloadwaittime      = "1"
+        shieldrechargerate  = "1"
+        shieldrechargewaittime = "1"
         name                = "cruiser"
         radarname           = "Spacecruiser" >
Index: code/branches/fabienHS15/data/levels/presentationHS13.oxw
===================================================================
--- code/branches/fabienHS15/data/levels/presentationHS13.oxw	(revision 10813)
+++ code/branches/fabienHS15/data/levels/presentationHS13.oxw	(revision 10814)
@@ -162,6 +162,6 @@
         maxshieldhealth     = "120"
         shieldabsorption    = "0.8"
-        reloadrate          = "1"
-        reloadwaittime      = "1"
+        shieldrechargerate  = "1"
+        shieldrechargewaittime = "1"
         name                = "Tanis1"
         radarname           = "Tanis Cruiser" >
Index: code/branches/fabienHS15/data/levels/shieldTest.oxw
===================================================================
--- code/branches/fabienHS15/data/levels/shieldTest.oxw	(revision 10813)
+++ code/branches/fabienHS15/data/levels/shieldTest.oxw	(revision 10814)
@@ -43,6 +43,6 @@
     shieldabsorption= 1
 
-    reloadrate= "10"
-    reloadwaittime= 1
+    shieldrechargerate = "10"
+    shieldrechargewaittime = 1
 
 >
Index: code/branches/fabienHS15/data/levels/templates/HeavyCruiser.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/HeavyCruiser.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/HeavyCruiser.oxt	(revision 10814)
@@ -19,6 +19,6 @@
    maxshieldhealth     = 50
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 300
Index: code/branches/fabienHS15/data/levels/templates/HeavyCruiserBody.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/HeavyCruiserBody.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/HeavyCruiserBody.oxt	(revision 10814)
@@ -17,6 +17,6 @@
    maxshieldhealth     = 500
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 300
Index: code/branches/fabienHS15/data/levels/templates/ModularSpaceShipTest.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/ModularSpaceShipTest.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/ModularSpaceShipTest.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 50
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/levels/templates/bigship.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/bigship.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/bigship.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 50
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 30
Index: code/branches/fabienHS15/data/levels/templates/enemyInvader.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/enemyInvader.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/enemyInvader.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 10
    shieldabsorption    = 0.9
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 150
@@ -77,6 +77,6 @@
    maxshieldhealth     = 20
    shieldabsorption    = 0.9
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 150
Index: code/branches/fabienHS15/data/levels/templates/spaceshipAssff.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipAssff.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipAssff.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 50
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/levels/templates/spaceshipAssff2.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipAssff2.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipAssff2.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 150
    shieldabsorption    = 0.95
-   reloadrate          = 5
-   reloadwaittime      = 0.5
+   shieldrechargerate  = 5
+   shieldrechargewaittime = 0.5
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/levels/templates/spaceshipCollateralDamage.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipCollateralDamage.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipCollateralDamage.oxt	(revision 10814)
@@ -16,6 +16,6 @@
    maxshieldhealth     = 50
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/levels/templates/spaceshipDodgeRace.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipDodgeRace.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipDodgeRace.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 20
    shieldabsorption    = 0.1
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 150
Index: code/branches/fabienHS15/data/levels/templates/spaceshipEscort.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipEscort.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipEscort.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 60
    shieldabsorption    = 0.9
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 150
Index: code/branches/fabienHS15/data/levels/templates/spaceshipFS15.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipFS15.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipFS15.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 800
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 40
Index: code/branches/fabienHS15/data/levels/templates/spaceshipGhost.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipGhost.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipGhost.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 150
    shieldabsorption    = 0.9
-   reloadrate          = 3
-   reloadwaittime      = 0.0
+   shieldrechargerate  = 3
+   shieldrechargewaittime = 0.0
 
    primaryThrust     = 600
Index: code/branches/fabienHS15/data/levels/templates/spaceshipHeartAttack.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipHeartAttack.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipHeartAttack.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 800
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 40
Index: code/branches/fabienHS15/data/levels/templates/spaceshipInvader.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipInvader.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipInvader.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 60
    shieldabsorption    = 0.9
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 150
Index: code/branches/fabienHS15/data/levels/templates/spaceshipPirate.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipPirate.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipPirate.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 40
    shieldabsorption    = 0.6
-   reloadrate          = 2
-   reloadwaittime      = 0.5
+   shieldrechargerate  = 2
+   shieldrechargewaittime = 0.5
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/levels/templates/spaceshipRace.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipRace.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipRace.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 50
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/levels/templates/spaceshipRing.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipRing.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipRing.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 60
    shieldabsorption    = 0.9
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 150
Index: code/branches/fabienHS15/data/levels/templates/spaceshipSpacecruiser.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipSpacecruiser.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipSpacecruiser.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 90
    shieldabsorption    = 0.9
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 90
Index: code/branches/fabienHS15/data/levels/templates/spaceshipSwallow.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipSwallow.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipSwallow.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 80
    shieldabsorption    = 0.75
-   reloadrate          = 1.5
-   reloadwaittime      = 0.2
+   shieldrechargerate  = 1.5
+   shieldrechargewaittime = 0.2
 
    primaryThrust     = 600;
Index: code/branches/fabienHS15/data/levels/templates/spaceshipTurret.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/spaceshipTurret.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/spaceshipTurret.oxt	(revision 10814)
@@ -15,6 +15,6 @@
    maxshieldhealth     = 50
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/levels/templates/towerdefensetower.oxt
===================================================================
--- code/branches/fabienHS15/data/levels/templates/towerdefensetower.oxt	(revision 10813)
+++ code/branches/fabienHS15/data/levels/templates/towerdefensetower.oxt	(revision 10814)
@@ -4,6 +4,6 @@
 
    	explosionchunks        = 6
-	reloadrate=10 
-	reloadwaittime=5 
+	shieldrechargerate=10 
+	shieldrechargewaittime=5 
 	collisionType="none" 
 	pitch="0" 
Index: code/branches/fabienHS15/data/levels/towerDefense.oxw
===================================================================
--- code/branches/fabienHS15/data/levels/towerDefense.oxw	(revision 10813)
+++ code/branches/fabienHS15/data/levels/towerDefense.oxw	(revision 10814)
@@ -39,6 +39,6 @@
   <TowerDefenseTower
   explosionchunks=6
-  reloadrate=10 
-  reloadwaittime=5 
+  shieldrechargerate=10 
+  shieldrechargewaittime=5 
   collisionType="none" 
   pitch="0" 
@@ -79,6 +79,6 @@
   <TowerDefenseTower
   explosionchunks=6
-  reloadrate=10 
-  reloadwaittime=5 
+  shieldrechargerate=10 
+  shieldrechargewaittime=5 
   collisionType="none" 
   pitch="0" 
@@ -122,6 +122,6 @@
   <TowerDefenseTower
   explosionchunks=6
-  reloadrate=10 
-  reloadwaittime=5 
+  shieldrechargerate=10 
+  shieldrechargewaittime=5 
   collisionType="none" 
   pitch="0" 
@@ -162,6 +162,6 @@
   <TowerDefenseTower
   explosionchunks=6
-  reloadrate=10 
-  reloadwaittime=5 
+  shieldrechargerate=10 
+  shieldrechargewaittime=5 
   collisionType="none" 
   pitch="0" 
@@ -189,5 +189,5 @@
         </links>
         <Weapon>
-          <RocketFire mode=0 munitionpershot=0 muzzleoffset="0,0,0" damage=2 shielddamage=4 />  
+          <RocketFire mode=0 munitionpershot=0 muzzleoffset="0,0,0" damage=2 shielddamage=4 fuel=10/>  
         </Weapon>
       </WeaponPack>
@@ -205,6 +205,6 @@
   <TowerDefenseTower
   explosionchunks=6
-  reloadrate=10 
-  reloadwaittime=5 
+  shieldrechargerate=10 
+  shieldrechargewaittime=5 
   collisionType="none" 
   pitch="0" 
@@ -258,6 +258,6 @@
    maxshieldhealth     = 15
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 1000
@@ -323,6 +323,6 @@
    maxshieldhealth     = 0
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 100
@@ -396,6 +396,6 @@
    maxshieldhealth     = 5
    shieldabsorption    = 0.8
-   reloadrate          = 1
-   reloadwaittime      = 1
+   shieldrechargerate  = 1
+   shieldrechargewaittime = 1
 
    primaryThrust     = 100
Index: code/branches/fabienHS15/data/overlays/HUDTemplates3.oxo
===================================================================
--- code/branches/fabienHS15/data/overlays/HUDTemplates3.oxo	(revision 10813)
+++ code/branches/fabienHS15/data/overlays/HUDTemplates3.oxo	(revision 10814)
@@ -24,4 +24,22 @@
 <Template name="spectatorhud">
   <OverlayGroup name = "spectatorhud" scale = "1, 1">
+  </OverlayGroup>
+</Template>
+
+<Template name="rockethud">
+  <OverlayGroup name = "rockethud" scale = "1, 1">
+    <HUDRocketFuelBar
+     name          = "RocketFuelBar1"
+     background    = "Orxonox/BarBackground"
+     size          = "0.40, 0.04"
+     position      = "0.0 , 1.0 "
+     pickpoint     = "0, 1"
+     correctaspect = true
+     iconmaterial  = "Orxonox/BarIconFuel"
+    >
+      <BarColour position = 0.0 colour = "0.7,0.2,0.2" />
+      <BarColour position = 0.5 colour = "0.7,0.7,0.2" />
+      <BarColour position = 1.0 colour = "0.2,0.7,0.2" />
+    </HUDRocketFuelBar>
   </OverlayGroup>
 </Template>
Index: code/branches/fabienHS15/src/modules/overlays/CMakeLists.txt
===================================================================
--- code/branches/fabienHS15/src/modules/overlays/CMakeLists.txt	(revision 10813)
+++ code/branches/fabienHS15/src/modules/overlays/CMakeLists.txt	(revision 10814)
@@ -16,4 +16,5 @@
   LINK_LIBRARIES
     orxonox
+    weapons
   SOURCE_FILES ${OVERLAYS_SRC_FILES}
 )
Index: code/branches/fabienHS15/src/modules/overlays/OverlaysPrereqs.h
===================================================================
--- code/branches/fabienHS15/src/modules/overlays/OverlaysPrereqs.h	(revision 10813)
+++ code/branches/fabienHS15/src/modules/overlays/OverlaysPrereqs.h	(revision 10814)
@@ -90,5 +90,7 @@
     class HUDRadar;
     class HUDSpeedBar;
+    class HUDShieldBar;
     class HUDBoostBar;
+    class HUDRocketFuelBar;
     class HUDTimer;
     class HUDAimAssistant;
Index: code/branches/fabienHS15/src/modules/overlays/hud/CMakeLists.txt
===================================================================
--- code/branches/fabienHS15/src/modules/overlays/hud/CMakeLists.txt	(revision 10813)
+++ code/branches/fabienHS15/src/modules/overlays/hud/CMakeLists.txt	(revision 10814)
@@ -7,4 +7,5 @@
   HUDShieldBar.cc
   HUDHealthBar.cc
+  HUDRocketFuelBar.cc
   HUDTimer.cc
   HUDEnemyHealthBar.cc
Index: code/branches/fabienHS15/src/modules/overlays/hud/HUDRocketFuelBar.cc
===================================================================
--- code/branches/fabienHS15/src/modules/overlays/hud/HUDRocketFuelBar.cc	(revision 10814)
+++ code/branches/fabienHS15/src/modules/overlays/hud/HUDRocketFuelBar.cc	(revision 10814)
@@ -0,0 +1,73 @@
+/*
+ *   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 2src/libraries/core/class/Identifier.h
+ *   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:
+ *      Fabien Vultier
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "HUDRocketFuelBar.h"
+
+#include "core/CoreIncludes.h"
+#include "weapons/projectiles/Rocket.h"
+
+namespace orxonox
+{
+    RegisterClass(HUDRocketFuelBar);
+
+    HUDRocketFuelBar::HUDRocketFuelBar(Context* context) : HUDBar(context)
+    {
+        RegisterObject(HUDRocketFuelBar);
+
+        this->owner_ = NULL;
+    }
+
+    HUDRocketFuelBar::~HUDRocketFuelBar()
+    {
+    }
+
+    void HUDRocketFuelBar::tick(float dt)
+    {
+        SUPER(HUDRocketFuelBar, tick, dt);
+
+        if (this->owner_)
+        {
+            float maxFuel = this->owner_->getMaxFuel();
+            if (maxFuel > 0.0)
+            {
+                this->setValue(this->owner_->getFuel()/maxFuel);
+            }
+            else
+            {
+                this->setValue(0.0);
+            }
+        }
+    }
+
+    void HUDRocketFuelBar::changedOwner()
+    {
+        SUPER(HUDRocketFuelBar, changedOwner);
+
+        this->owner_ = orxonox_cast<Rocket*>(this->getOwner());
+    }
+}
Index: code/branches/fabienHS15/src/modules/overlays/hud/HUDRocketFuelBar.h
===================================================================
--- code/branches/fabienHS15/src/modules/overlays/hud/HUDRocketFuelBar.h	(revision 10814)
+++ code/branches/fabienHS15/src/modules/overlays/hud/HUDRocketFuelBar.h	(revision 10814)
@@ -0,0 +1,58 @@
+/*
+ *   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:
+ *      Fabien Vultier
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+ /**
+    @file HUDRocketFuelBar.h
+    @brief Definition of the HUDRocketFuelBar class. This HUDBar displays the the amount of fuel  that a rocket has.
+*/
+
+#ifndef _HUDRocketFuelBar_H__
+#define _HUDRocketFuelBar_H__
+
+#include "overlays/OverlaysPrereqs.h"
+
+#include "tools/interfaces/Tickable.h"
+#include "weapons/projectiles/Rocket.h"
+#include "HUDBar.h"
+
+namespace orxonox
+{
+    class _OverlaysExport HUDRocketFuelBar : public HUDBar, public Tickable
+    {
+    public:
+        HUDRocketFuelBar(Context* context);
+        virtual ~HUDRocketFuelBar();
+
+        virtual void tick(float dt);
+        virtual void changedOwner();
+
+    private:
+        Rocket* owner_;
+    };
+}
+#endif /* _HUDRocketFuelBar_H__ */
Index: code/branches/fabienHS15/src/modules/weapons/WeaponsPrereqs.h
===================================================================
--- code/branches/fabienHS15/src/modules/weapons/WeaponsPrereqs.h	(revision 10813)
+++ code/branches/fabienHS15/src/modules/weapons/WeaponsPrereqs.h	(revision 10814)
@@ -69,11 +69,15 @@
 {
     class MuzzleFlash;
+    class IceGunFreezer;
+    class RocketController;
 
     // munitions
     class FusionMunition;
     class LaserMunition;
-    class ReplenishingMunition;
     class RocketMunition;
     class GravityBombMuntion;
+    class IceMunition;
+    class LightningMunition;
+    class SplitMunition;
 
     // projectiles
@@ -81,5 +85,8 @@
     class LightningGunProjectile;
     class ParticleProjectile;
+    class IceProjectile;
+    class SplitProjectile;
     class Projectile;
+    class BasicProjectile;
     class Rocket;
     class RocketOld;
@@ -91,4 +98,6 @@
     class FusionFire;
     class HsW01;
+    class IceGun;
+    class SplitGun;
     class LaserFire;
     class LightningGun;
Index: code/branches/fabienHS15/src/modules/weapons/projectiles/Rocket.cc
===================================================================
--- code/branches/fabienHS15/src/modules/weapons/projectiles/Rocket.cc	(revision 10813)
+++ code/branches/fabienHS15/src/modules/weapons/projectiles/Rocket.cc	(revision 10814)
@@ -66,5 +66,5 @@
 
         this->localAngularVelocity_ = 0;
-        this->lifetime_ = 100.0f;
+        this->lifetime_ = 20.0f;
 
         if (GameMode::isMaster())
@@ -100,6 +100,4 @@
             this->attachCollisionShape(collisionShape);
 
-            this->destroyTimer_.setTimer(this->lifetime_, false, createExecutor(createFunctor(&BasicProjectile::destroyObject, this)));
-
             // Add sound
             this->defSndWpnEngine_ = new WorldSound(this->getContext());
@@ -114,4 +112,6 @@
             this->defSndWpnLaunch_->setVolume(1.0f);
             this->attach(defSndWpnLaunch_);
+
+            this->setHudTemplate("rockethud");
         }
         else
@@ -320,3 +320,13 @@
     }
 
+    float Rocket::getFuel() const
+    {
+        return this->destroyTimer_.getRemainingTime();
+    }
+
+    void Rocket::setMaxFuel(float fuel)
+    {
+        this->lifetime_ = fuel;
+        this->destroyTimer_.setTimer(this->lifetime_, false, createExecutor(createFunctor(&BasicProjectile::destroyObject, this)));
+    }
 }
Index: code/branches/fabienHS15/src/modules/weapons/projectiles/Rocket.h
===================================================================
--- code/branches/fabienHS15/src/modules/weapons/projectiles/Rocket.h	(revision 10813)
+++ code/branches/fabienHS15/src/modules/weapons/projectiles/Rocket.h	(revision 10814)
@@ -118,4 +118,15 @@
             virtual void fired(unsigned int firemode);
 
+            /**
+            @brief Set the maximum lifetime of the rocket.
+            */
+            virtual void setMaxFuel(float fuel);
+            /**
+            @brief Get the maximum lifetime of the rocket.
+            */
+            inline float getMaxFuel() const
+                { return lifetime_; }
+            virtual float getFuel() const;
+
         private:
             Vector3 localAngularVelocity_; //!< Variable to temporarily store accumulated steering command input.
Index: code/branches/fabienHS15/src/modules/weapons/weaponmodes/RocketFire.cc
===================================================================
--- code/branches/fabienHS15/src/modules/weapons/weaponmodes/RocketFire.cc	(revision 10813)
+++ code/branches/fabienHS15/src/modules/weapons/weaponmodes/RocketFire.cc	(revision 10814)
@@ -41,5 +41,5 @@
 #include "weaponsystem/WeaponSystem.h"
 #include "worldentities/pawns/Pawn.h"
-
+#include "core/XMLPort.h"
 #include "weapons/projectiles/Rocket.h"
 
@@ -56,4 +56,5 @@
         this->damage_ = 0.0f;
         this->speed_ = 500.0f;
+        this->fuel_ = 10.0f;
 
         this->setMunitionName("RocketMunition");
@@ -65,4 +66,15 @@
     RocketFire::~RocketFire()
     {
+    }
+
+    /**
+    @brief
+        XMLPort for the RocketFire. You can define the maximum lifetime of the rockets
+    */
+    void RocketFire::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+        SUPER(RocketFire, XMLPort, xmlelement, mode);
+
+        XMLPortParam(RocketFire, "fuel", setFuel, getFuel, xmlelement, mode);
     }
 
@@ -85,4 +97,5 @@
         rocket->setShieldDamage(this->getShieldDamage());
         rocket->setHealthDamage(this->getHealthDamage());
+        rocket->setMaxFuel(this->fuel_);
     }
 }
Index: code/branches/fabienHS15/src/modules/weapons/weaponmodes/RocketFire.h
===================================================================
--- code/branches/fabienHS15/src/modules/weapons/weaponmodes/RocketFire.h	(revision 10813)
+++ code/branches/fabienHS15/src/modules/weapons/weaponmodes/RocketFire.h	(revision 10814)
@@ -54,8 +54,15 @@
             virtual ~RocketFire();
 
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
             virtual void fire();
+            inline void setFuel(float fuel)
+                { this->fuel_ = fuel; }
+            inline float getFuel() const
+                { return this->fuel_; }
 
         private:
             float speed_; //!< The speed of the Rocket.
+            float fuel_; //!< The maximum lifetime of the rocket
     };
 }
Index: code/branches/fabienHS15/src/modules/weapons/weaponmodes/SplitGun.cc
===================================================================
--- code/branches/fabienHS15/src/modules/weapons/weaponmodes/SplitGun.cc	(revision 10813)
+++ code/branches/fabienHS15/src/modules/weapons/weaponmodes/SplitGun.cc	(revision 10814)
@@ -35,5 +35,5 @@
 
 #include "core/CoreIncludes.h"
-#include "core/XMLPort.h"    
+#include "core/XMLPort.h"
 #include "weaponsystem/Weapon.h"
 #include "weaponsystem/WeaponPack.h"
Index: code/branches/fabienHS15/src/orxonox/OrxonoxPrereqs.h
===================================================================
--- code/branches/fabienHS15/src/orxonox/OrxonoxPrereqs.h	(revision 10813)
+++ code/branches/fabienHS15/src/orxonox/OrxonoxPrereqs.h	(revision 10814)
@@ -167,4 +167,5 @@
     class DefaultWeaponmodeLink;
     class Munition;
+    class ReplenishingMunition;
     class Weapon;
     class WeaponMode;
Index: code/branches/fabienHS15/src/orxonox/infos/PlayerInfo.cc
===================================================================
--- code/branches/fabienHS15/src/orxonox/infos/PlayerInfo.cc	(revision 10813)
+++ code/branches/fabienHS15/src/orxonox/infos/PlayerInfo.cc	(revision 10814)
@@ -202,4 +202,8 @@
 
         this->changedControllableEntity();
+
+         // HACK-ish
+        if(this->isHumanPlayer())
+            entity->createHud();
     }
 
@@ -252,4 +256,6 @@
         if( !entity || this->previousControllableEntity_.size() == 0 )
             return;
+
+        entity->destroyHud(); // HACK-ish
 
         this->controllableEntity_->setController(0);
Index: code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.cc
===================================================================
--- code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.cc	(revision 10813)
+++ code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.cc	(revision 10814)
@@ -143,6 +143,6 @@
         XMLPortObject(Pawn, Munition, "munition", addMunitionXML, getMunitionXML, xmlelement, mode);
 
-        XMLPortParam(Pawn, "reloadrate", setShieldRechargeRate, getShieldRechargeRate, xmlelement, mode).defaultValues(0);
-        XMLPortParam(Pawn, "reloadwaittime", setShieldRechargeWaitTime, getShieldRechargeWaitTime, xmlelement, mode).defaultValues(1.0f);
+        XMLPortParam(Pawn, "shieldrechargerate", setShieldRechargeRate, getShieldRechargeRate, xmlelement, mode).defaultValues(0);
+        XMLPortParam(Pawn, "shieldrechargewaittime", setShieldRechargeWaitTime, getShieldRechargeWaitTime, xmlelement, mode).defaultValues(1.0f);
 
         XMLPortParam(Pawn, "explosionSound",  setExplosionSound,  getExplosionSound,  xmlelement, mode);
Index: code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.h
===================================================================
--- code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.h	(revision 10813)
+++ code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.h	(revision 10814)
@@ -46,5 +46,5 @@
         or below zero. If it is, the pawn gets killed.
 
-        Pawns can carry pickups and fire weapons. The can also have shields.
+        Pawns can carry pickups and fire weapons. They can also have shields.
 
         Notice that every Pawn is a ControllableEntity.
