Index: code/branches/libraries2/src/modules/CMakeLists.txt
===================================================================
--- code/branches/libraries2/src/modules/CMakeLists.txt	(revision 5723)
+++ code/branches/libraries2/src/modules/CMakeLists.txt	(revision 5724)
@@ -23,2 +23,3 @@
 ADD_SUBDIRECTORY(overlays)
 ADD_SUBDIRECTORY(questsystem)
+ADD_SUBDIRECTORY(weapons)
Index: code/branches/libraries2/src/modules/weapons/CMakeLists.txt
===================================================================
--- code/branches/libraries2/src/modules/weapons/CMakeLists.txt	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/CMakeLists.txt	(revision 5724)
@@ -1,14 +1,3 @@
-ADD_SOURCE_FILES(ORXONOX_SRC_FILES
-  Munition.cc
-  Weapon.cc
-  WeaponMode.cc
-  WeaponPack.cc
-  WeaponSet.cc
-  WeaponSlot.cc
-  WeaponSystem.cc
-  DefaultWeaponmodeLink.cc
-)
-
-SET_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
+SET_SOURCE_FILES(WEAPONS_SRC_FILES
   MuzzleFlash.cc
 )
@@ -18,10 +7,10 @@
 ADD_SUBDIRECTORY(weaponmodes)
 
-ORXONOX_ADD_LIBRARY(weaponsystem
+ORXONOX_ADD_LIBRARY(weapons
   MODULE
   DEFINE_SYMBOL
-    "WEAPONSYSTEM_SHARED_BUILD"
+    "WEAPONS_SHARED_BUILD"
   LINK_LIBRARIES
     orxonox
-  SOURCE_FILES ${WEAPONSYSTEM_SRC_FILES}
+  SOURCE_FILES ${WEAPONS_SRC_FILES}
 )
Index: code/branches/libraries2/src/modules/weapons/MuzzleFlash.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/MuzzleFlash.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/MuzzleFlash.h	(revision 5724)
@@ -30,5 +30,5 @@
 #define _MuzzleFlash_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 
 #include "tools/Timer.h"
@@ -37,5 +37,5 @@
 namespace orxonox
 {
-    class _WeaponsystemExport MuzzleFlash : public Billboard
+    class _WeaponsExport MuzzleFlash : public Billboard
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/WeaponsPrereqs.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/WeaponsPrereqs.h	(revision 5724)
+++ code/branches/libraries2/src/modules/weapons/WeaponsPrereqs.h	(revision 5724)
@@ -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:
+ *      Reto Grieder
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+/**
+  @file
+  @brief Contains all the necessary forward declarations for all classes and structs.
+*/
+
+#ifndef _WeaponsPrereqs_H__
+#define _WeaponsPrereqs_H__
+
+#include "OrxonoxConfig.h"
+
+#include "OrxonoxPrereqs.h"
+
+//-----------------------------------------------------------------------
+// Shared library settings
+//-----------------------------------------------------------------------
+#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(ORXONOX_STATIC_BUILD)
+#  ifdef WEAPONS_SHARED_BUILD
+#    define _WeaponsExport __declspec(dllexport)
+#  else
+#    if defined( __MINGW32__ )
+#      define _WeaponsExport
+#    else
+#      define _WeaponsExport __declspec(dllimport)
+#    endif
+#  endif
+#elif defined ( ORXONOX_GCC_VISIBILITY )
+#  define _WeaponsExport  __attribute__ ((visibility("default")))
+#else
+#  define _WeaponsExport
+#endif
+
+//-----------------------------------------------------------------------
+// Forward declarations
+//-----------------------------------------------------------------------
+
+namespace orxonox
+{
+    class LaserFire;
+    class FusionFire;
+    class HsW01;
+    class LightningGun;
+    class EnergyDrink;
+
+    class Projectile;
+    class BillboardProjectile;
+    class ParticleProjectile;
+    class LightningGunProjectile;
+
+    class ReplenishingMunition;
+    class LaserMunition;
+    class FusionMunition;
+
+    class MuzzleFlash;
+}
+
+#endif /* _WeaponsPrereqs_H__ */
Index: code/branches/libraries2/src/modules/weapons/munitions/CMakeLists.txt
===================================================================
--- code/branches/libraries2/src/modules/weapons/munitions/CMakeLists.txt	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/munitions/CMakeLists.txt	(revision 5724)
@@ -1,3 +1,3 @@
-ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
+ADD_SOURCE_FILES(WEAPONS_SRC_FILES
   ReplenishingMunition.cc
   LaserMunition.cc
Index: code/branches/libraries2/src/modules/weapons/munitions/FusionMunition.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/munitions/FusionMunition.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/munitions/FusionMunition.h	(revision 5724)
@@ -30,10 +30,10 @@
 #define _FusionMunition_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 #include "objects/weaponsystem/Munition.h"
 
 namespace orxonox
 {
-    class _WeaponsystemExport FusionMunition : public Munition
+    class _WeaponsExport FusionMunition : public Munition
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/munitions/LaserMunition.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/munitions/LaserMunition.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/munitions/LaserMunition.h	(revision 5724)
@@ -30,10 +30,10 @@
 #define _LaserMunition_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 #include "ReplenishingMunition.h"
 
 namespace orxonox
 {
-    class _WeaponsystemExport LaserMunition : public ReplenishingMunition
+    class _WeaponsExport LaserMunition : public ReplenishingMunition
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/munitions/ReplenishingMunition.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/munitions/ReplenishingMunition.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/munitions/ReplenishingMunition.h	(revision 5724)
@@ -30,5 +30,5 @@
 #define _ReplenishingMunition_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 
 #include "tools/Timer.h"
@@ -37,5 +37,5 @@
 namespace orxonox
 {
-    class _WeaponsystemExport ReplenishingMunition : public Munition
+    class _WeaponsExport ReplenishingMunition : public Munition
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/projectiles/BillboardProjectile.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/projectiles/BillboardProjectile.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/projectiles/BillboardProjectile.h	(revision 5724)
@@ -30,5 +30,5 @@
 #define _BillboardProjectile_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 
 #include "util/Math.h"
@@ -38,5 +38,5 @@
 namespace orxonox
 {
-    class _WeaponsystemExport BillboardProjectile : public Projectile
+    class _WeaponsExport BillboardProjectile : public Projectile
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/projectiles/CMakeLists.txt
===================================================================
--- code/branches/libraries2/src/modules/weapons/projectiles/CMakeLists.txt	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/projectiles/CMakeLists.txt	(revision 5724)
@@ -1,3 +1,3 @@
-ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
+ADD_SOURCE_FILES(WEAPONS_SRC_FILES
   BillboardProjectile.cc
   ParticleProjectile.cc
Index: code/branches/libraries2/src/modules/weapons/projectiles/LightningGunProjectile.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/projectiles/LightningGunProjectile.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/projectiles/LightningGunProjectile.h	(revision 5724)
@@ -30,5 +30,5 @@
 #define _LightningGunProjectile_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 
 #include <string>
@@ -38,5 +38,5 @@
 namespace orxonox
 {
-    class _WeaponsystemExport LightningGunProjectile : public BillboardProjectile
+    class _WeaponsExport LightningGunProjectile : public BillboardProjectile
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/projectiles/ParticleProjectile.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/projectiles/ParticleProjectile.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/projectiles/ParticleProjectile.h	(revision 5724)
@@ -30,10 +30,10 @@
 #define _ParticleProjectile_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 #include "BillboardProjectile.h"
 
 namespace orxonox
 {
-    class _WeaponsystemExport ParticleProjectile : public BillboardProjectile
+    class _WeaponsExport ParticleProjectile : public BillboardProjectile
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/projectiles/Projectile.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/projectiles/Projectile.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/projectiles/Projectile.h	(revision 5724)
@@ -30,5 +30,5 @@
 #define _Projectile_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 
 #include "tools/Timer.h"
@@ -38,5 +38,5 @@
 namespace orxonox
 {
-    class _WeaponsystemExport Projectile : public MovableEntity, public PawnListener
+    class _WeaponsExport Projectile : public MovableEntity, public PawnListener
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/CMakeLists.txt
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/CMakeLists.txt	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/CMakeLists.txt	(revision 5724)
@@ -1,3 +1,3 @@
-ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
+ADD_SOURCE_FILES(WEAPONS_SRC_FILES
   EnergyDrink.cc
   FusionFire.cc
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/EnergyDrink.cc
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/EnergyDrink.cc	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/EnergyDrink.cc	(revision 5724)
@@ -34,6 +34,6 @@
 #include "objects/worldentities/Model.h"
 
-#include "objects/weaponsystem/projectiles/Projectile.h"
-#include "objects/weaponsystem/MuzzleFlash.h"
+#include "weapons/projectiles/Projectile.h"
+#include "weapons/MuzzleFlash.h"
 #include "objects/weaponsystem/Weapon.h"
 #include "objects/weaponsystem/WeaponPack.h"
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/EnergyDrink.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/EnergyDrink.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/EnergyDrink.h	(revision 5724)
@@ -30,5 +30,5 @@
 #define _EnergyDrink_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 
 #include <string>
@@ -38,5 +38,5 @@
 namespace orxonox
 {
-    class _WeaponsystemExport EnergyDrink : public WeaponMode
+    class _WeaponsExport EnergyDrink : public WeaponMode
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/FusionFire.cc
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/FusionFire.cc	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/FusionFire.cc	(revision 5724)
@@ -31,5 +31,5 @@
 #include "util/Math.h"
 #include "core/CoreIncludes.h"
-#include "objects/weaponsystem/projectiles/BillboardProjectile.h"
+#include "weapons/projectiles/BillboardProjectile.h"
 
 #include "objects/weaponsystem/Weapon.h"
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/FusionFire.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/FusionFire.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/FusionFire.h	(revision 5724)
@@ -30,10 +30,10 @@
 #define _FusionFire_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 #include "objects/weaponsystem/WeaponMode.h"
 
 namespace orxonox
 {
-    class _WeaponsystemExport FusionFire : public WeaponMode
+    class _WeaponsExport FusionFire : public WeaponMode
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/HsW01.cc
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/HsW01.cc	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/HsW01.cc	(revision 5724)
@@ -34,6 +34,6 @@
 #include "objects/worldentities/Model.h"
 
-#include "objects/weaponsystem/projectiles/Projectile.h"
-#include "objects/weaponsystem/MuzzleFlash.h"
+#include "weapons/projectiles/Projectile.h"
+#include "weapons/MuzzleFlash.h"
 #include "objects/weaponsystem/Weapon.h"
 #include "objects/weaponsystem/WeaponPack.h"
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/HsW01.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/HsW01.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/HsW01.h	(revision 5724)
@@ -30,5 +30,5 @@
 #define _HsW01_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 
 #include "tools/Timer.h"
@@ -37,5 +37,5 @@
 namespace orxonox
 {
-    class _WeaponsystemExport HsW01 : public WeaponMode
+    class _WeaponsExport HsW01 : public WeaponMode
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/LaserFire.cc
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/LaserFire.cc	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/LaserFire.cc	(revision 5724)
@@ -30,5 +30,5 @@
 
 #include "core/CoreIncludes.h"
-#include "objects/weaponsystem/projectiles/ParticleProjectile.h"
+#include "weapons/projectiles/ParticleProjectile.h"
 #include "objects/weaponsystem/Weapon.h"
 #include "objects/weaponsystem/WeaponPack.h"
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/LaserFire.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/LaserFire.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/LaserFire.h	(revision 5724)
@@ -30,10 +30,10 @@
 #define _LaserFire_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 #include "objects/weaponsystem/WeaponMode.h"
 
 namespace orxonox
 {
-    class _WeaponsystemExport LaserFire : public WeaponMode
+    class _WeaponsExport LaserFire : public WeaponMode
     {
         public:
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/LightningGun.cc
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/LightningGun.cc	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/LightningGun.cc	(revision 5724)
@@ -30,5 +30,5 @@
 
 #include "core/CoreIncludes.h"
-#include "objects/weaponsystem/projectiles/LightningGunProjectile.h"
+#include "weapons/projectiles/LightningGunProjectile.h"
 #include "objects/weaponsystem/Weapon.h"
 #include "objects/weaponsystem/WeaponPack.h"
Index: code/branches/libraries2/src/modules/weapons/weaponmodes/LightningGun.h
===================================================================
--- code/branches/libraries2/src/modules/weapons/weaponmodes/LightningGun.h	(revision 5723)
+++ code/branches/libraries2/src/modules/weapons/weaponmodes/LightningGun.h	(revision 5724)
@@ -30,10 +30,10 @@
 #define _LightningGun_H__
 
-#include "objects/weaponsystem/WeaponsystemPrereqs.h"
+#include "weapons/WeaponsPrereqs.h"
 #include "objects/weaponsystem/WeaponMode.h"
 
 namespace orxonox
 {
-    class _WeaponsystemExport LightningGun : public WeaponMode
+    class _WeaponsExport LightningGun : public WeaponMode
     {
         public:
