Index: code/branches/weapon/src/orxonox/CMakeLists.txt
===================================================================
--- code/branches/weapon/src/orxonox/CMakeLists.txt	(revision 2048)
+++ code/branches/weapon/src/orxonox/CMakeLists.txt	(revision 2049)
@@ -63,4 +63,11 @@
   objects/ParticleProjectile.cc
 
+  objects/WeaponSystem.cc
+  objects/weaponSystem/WeaponSet.cc
+  objects/weaponSystem/WeaponSlot.cc
+  objects/weaponSystem/Weapon.cc
+  objects/weaponSystem/Munition.cc
+
+
   tolua/tolua_bind.cc
 )
Index: code/branches/weapon/src/orxonox/OrxonoxPrereqs.h
===================================================================
--- code/branches/weapon/src/orxonox/OrxonoxPrereqs.h	(revision 2048)
+++ code/branches/weapon/src/orxonox/OrxonoxPrereqs.h	(revision 2049)
@@ -97,4 +97,10 @@
     class ParticleProjectile;
 
+    class WeaponSystem;
+    class WeaponSet;
+    class WeaponSlot;
+    class Weapon;
+    class Munition;
+
     // tools
     class BillboardSet;
Index: code/branches/weapon/src/orxonox/objects/SpaceShip.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/SpaceShip.cc	(revision 2048)
+++ code/branches/weapon/src/orxonox/objects/SpaceShip.cc	(revision 2049)
@@ -148,5 +148,5 @@
         for (ObjectList<SpaceShipAI>::iterator it = ObjectList<SpaceShipAI>::begin(); it; ++it)
             it->shipDied(this);
-      
+
         if (this->isInitialized())
         {
@@ -262,14 +262,14 @@
               this->backlight_->setPosition(-2.35, 0, 0.2);
               this->backlight_->setColour(this->getProjectileColour());
-  
+
               this->smoke_ = new ParticleSpawner();
               this->smoke_->setParticle("Orxonox/smoke5", LODParticle::normal, 0, 0, 3);
               this->attachObject(this->smoke_);
-  
+
               this->fire_ = new ParticleSpawner();
               this->fire_->setParticle("Orxonox/fire3", LODParticle::normal, 0, 0, 1);
               this->attachObject(this->fire_);
             }
-            
+
             // END CREATING ADDITIONAL EFFECTS
 
@@ -300,5 +300,5 @@
     void SpaceShip::setConfigValues()
     {
-        SetConfigValue(bInvertYAxis_, false).description("Set this to true for joystick-like mouse behaviour (mouse up = ship down).");
+        SetConfigValue(bInvertYAxis_, false).description("Set this to true for joys-like mouse behaviour (mouse up = ship down).");
         SetConfigValue(reloadTime_, 0.125).description("The reload time of the weapon in seconds");
         SetConfigValue(testvector_, Vector3()).description("asdfblah");
Index: code/branches/weapon/src/orxonox/objects/WeaponSystem.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/WeaponSystem.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/WeaponSystem.cc	(revision 2049)
@@ -0,0 +1,84 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+#include <vector>
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+#include "WeaponSystem.h"
+
+/* WEAPONSYSTEM
+ * creates the WeaponSystem and the ability to use weapons and munition
+ * loads the weapon the whole weaponSystem setting from an xml file
+ *
+ */
+
+namespace orxonox
+{
+    WeaponSystem::WeaponSystem()
+    {
+        RegisterObject(WeaponSystem);
+    }
+
+    WeaponSystem::~WeaponSystem()
+    {
+    }
+
+    //creates empty weaponSet
+    void WeaponSystem::attachWeaponSet(WeaponSet *wSet)
+    {
+        this->weaponSets_.push_back(wSet);
+        wSet->setParentWeaponSystem(this);
+    }
+
+    //the first weaponSet is at n=0
+    void WeaponSystem::setActiveWeaponSet(int n)
+    {
+        if ( (int) weaponSets_.size() <= n )
+            n=0;
+        this->activeWeaponSet_ = this->weaponSets_[n];
+    }
+
+    //n is the n'th weaponSet, starting with zero
+    //Spaceship.cc only needs to have the keybinding to a specific Set-number n
+    void WeaponSystem::fire(int n)
+    {
+        if (n>=0)
+            this->weaponSets_[n]->fire();
+    }
+
+    void WeaponSystem::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+
+}
Index: code/branches/weapon/src/orxonox/objects/WeaponSystem.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/WeaponSystem.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/WeaponSystem.h	(revision 2049)
@@ -0,0 +1,67 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+
+#ifndef _WeaponSystem_H__
+#define _WeaponSystem_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+#include "weaponSystem/WeaponSet.h"
+
+namespace orxonox
+{
+    class _OrxonoxExport WeaponSystem : public BaseObject
+    {
+        public:
+            WeaponSystem();
+            virtual ~WeaponSystem();
+
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+            void attachWeaponSet(WeaponSet *wSet);
+            void fire(int n);
+            void setActiveWeaponSet(int n);
+
+            inline void WeaponSystem::setParentSpaceShip(SpaceShip *parentSpaceShip)
+                { parentSpaceShip_=parentSpaceShip; }
+            inline SpaceShip * getParentSpaceShip()
+                { return parentSpaceShip_; }
+
+
+        private:
+            std::vector<WeaponSet *> weaponSets_;
+            WeaponSet *activeWeaponSet_;
+
+            SpaceShip *parentSpaceShip_;
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/Munition.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/Munition.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/Munition.cc	(revision 2049)
@@ -0,0 +1,53 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+#include "Munition.h"
+
+namespace orxonox
+{
+    Munition::Munition()
+    {
+        RegisterObject(Munition);
+    }
+
+    Munition::~Munition()
+    {
+    }
+
+    void Munition::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+
+}
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/Munition.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/Munition.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/Munition.h	(revision 2049)
@@ -0,0 +1,54 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _Munition_H__
+#define _Munition_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+
+namespace orxonox
+{
+    class _OrxonoxExport Munition : public BaseObject
+    {
+        public:
+            Munition();
+            virtual ~Munition();
+
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+
+        private:
+
+
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/Weapon.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/Weapon.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/Weapon.cc	(revision 2049)
@@ -0,0 +1,57 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+#include "Weapon.h"
+
+namespace orxonox
+{
+    Weapon::Weapon()
+    {
+        RegisterObject(Weapon);
+    }
+
+    Weapon::~Weapon()
+    {
+    }
+
+    void Weapon::addMunition()
+    {
+
+    }
+
+    void Weapon::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+}
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/Weapon.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/Weapon.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/Weapon.h	(revision 2049)
@@ -0,0 +1,59 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _Weapon_H__
+#define _Weapon_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+
+namespace orxonox
+{
+    class _OrxonoxExport Weapon : public BaseObject
+    {
+        public:
+            Weapon();
+            virtual ~Weapon();
+
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+            void addMunition();
+            void fire();
+
+        private:
+                        int loadingTime;
+            Munition *munition_;
+
+
+
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSet.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSet.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSet.cc	(revision 2049)
@@ -0,0 +1,70 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ... *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+#include <vector>
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+#include "WeaponSet.h"
+
+namespace orxonox
+{
+    WeaponSet::WeaponSet()
+    {
+        RegisterObject(WeaponSet);
+    }
+
+    WeaponSet::~WeaponSet()
+    {
+    }
+
+    //Vorwärtsdeklaration
+    WeaponSystem * parentWeaponSystem_;
+
+    void WeaponSet::attachWeaponSlot(WeaponSlot *wSlot)
+    {
+        this->weaponSlots_.push_back(wSlot);
+    }
+
+    void WeaponSet::fire()
+    {
+        for (int i=0; i < (int) this->weaponSlots_.size(); i++)
+        {
+            this->weaponSlots_[i]->fire();
+        }
+    }
+
+    void WeaponSet::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+
+}
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSet.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSet.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSet.h	(revision 2049)
@@ -0,0 +1,63 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+
+#ifndef _WeaponSet_H__
+#define _WeaponSet_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+#include "WeaponSlot.h"
+
+
+namespace orxonox
+{
+    class _OrxonoxExport WeaponSet : public BaseObject
+    {
+        public:
+            WeaponSet();
+            virtual ~WeaponSet();
+
+            virtual void WeaponSet::XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+            void WeaponSet::attachWeaponSlot(WeaponSlot *wSlot);
+            void WeaponSet::fire();
+            inline void WeaponSet::setParentWeaponSystem(WeaponSystem *parentWeaponSystem)
+                { parentWeaponSystem_=parentWeaponSystem; }
+            inline WeaponSystem * getParentWeaponSystem()
+                { return parentWeaponSystem_; }
+
+        private:
+            std::vector<WeaponSlot *> weaponSlots_;
+            WeaponSystem *parentWeaponSystem_;
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSlot.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSlot.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSlot.cc	(revision 2049)
@@ -0,0 +1,75 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+#include "WeaponSlot.h"
+
+
+
+namespace orxonox
+{
+    WeaponSlot::WeaponSlot()
+    {
+        RegisterObject(WeaponSlot);
+    }
+
+    WeaponSlot::~WeaponSlot()
+    {
+    }
+
+    void WeaponSlot::attachWeapon(Weapon *weaponName)
+    {
+
+    }
+
+    /*sets the munition type
+     *unlimited: true
+     *limited:   false  (in this case there will be munition)
+     */
+    void WeaponSlot::setAmmoType(bool isUnlimited)
+    {
+        if (isUnlimited == true)
+            unlimitedAmmo_ = true;
+        else unlimitedAmmo_ = false;
+    }
+
+    void WeaponSlot::fire()
+    {
+
+    }
+
+    void WeaponSlot::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+}
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSlot.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSlot.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/WeaponSlot.h	(revision 2049)
@@ -0,0 +1,69 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _WeaponSlot_H__
+#define _WeaponSlot_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+
+#include "Weapon.h"
+
+
+namespace orxonox
+{
+    class _OrxonoxExport WeaponSlot : public BaseObject
+    {
+        public:
+            WeaponSlot();
+            virtual ~WeaponSlot();
+
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+            void attachWeapon(Weapon *weaponName);
+            void setAmmoType(bool isUnlimited);
+            void fire();
+
+            inline void WeaponSlot::setParentWeaponSet(WeaponSet *parentWeaponSet)
+                { parentWeaponSet_=parentWeaponSet; }
+            inline WeaponSet * getParentWeaponSet()
+                { return parentWeaponSet_; }
+
+
+
+        private:
+            Weapon *attachedWeapon_;
+            bool unlimitedAmmo_;
+
+            WeaponSet *parentWeaponSet_;
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/munitions/LaserGunMunition.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/munitions/LaserGunMunition.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/munitions/LaserGunMunition.cc	(revision 2049)
@@ -0,0 +1,53 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+#include "LaserGunMunition.h"
+
+namespace orxonox
+{
+    LaserGunMunition::LaserGunMunition()
+    {
+        RegisterObject(LaserGunMunition);
+    }
+
+    LaserGunMunition::~LaserGunMunition()
+    {
+    }
+
+    void LaserGunMunition::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+
+}
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/munitions/LaserGunMunition.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/munitions/LaserGunMunition.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/munitions/LaserGunMunition.h	(revision 2049)
@@ -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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _LaserGunMunition_H__
+#define _LaserGunMunition_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+
+namespace orxonox
+{
+    class _OrxonoxExport LaserGunMunition : public BaseObject
+    {
+        public:
+            LaserGunMunition();
+            virtual ~LaserGunMunition();
+
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+
+        private:
+            int bullets_;
+            int magazines_;
+            int maxBullets_;
+            int maxMagazines_;
+
+
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/LaserGun.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/LaserGun.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/LaserGun.cc	(revision 2049)
@@ -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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+
+namespace orxonox
+{
+    LaserGun::LaserGun()
+    {
+        RegisterObject(LaserGun);
+    }
+
+    LaserGun::~LaserGun()
+    {
+    }
+
+    LaserGun::addMunition()
+    {
+        this->munition_ =
+    }
+
+    void LaserGun::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+
+}
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/LaserGun.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/LaserGun.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/LaserGun.h	(revision 2049)
@@ -0,0 +1,57 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _LaserGun_H__
+#define _LaserGun_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+#include "LaserGunMunition.h"
+
+namespace orxonox
+{
+    class _OrxonoxExport LaserGun : public BaseObject : public Weapon
+    {
+        public:
+            LaserGun();
+            virtual ~LaserGun();
+
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+
+
+        private:
+
+
+
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/Missile.cc
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/Missile.cc	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/Missile.cc	(revision 2049)
@@ -0,0 +1,54 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "OrxonoxStableHeaders.h"
+
+#include <list>
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "util/Debug.h"
+
+
+namespace orxonox
+{
+    Missile::Missile()
+    {
+        RegisterObject(Missile);
+    }
+
+    Missile::~Missile()
+    {
+    }
+
+    void Missile::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+    {
+
+    }
+
+}
Index: code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/Missile.h
===================================================================
--- code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/Missile.h	(revision 2049)
+++ code/branches/weapon/src/orxonox/objects/weaponSystem/weapons/Missile.h	(revision 2049)
@@ -0,0 +1,54 @@
+/*
+ *   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:
+ *      Martin Polak
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _Missile_H__
+#define _Missile_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "core/BaseObject.h"
+
+
+namespace orxonox
+{
+    class _OrxonoxExport Missile : public BaseObject : public Weapon
+    {
+        public:
+            Missile();
+            virtual ~Missile();
+
+            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+
+        private:
+
+
+    };
+}
+
+#endif /* _WeaponSystem_H__ */
