Index: code/branches/pch/src/orxonox/objects/CMakeLists.txt
===================================================================
--- code/branches/pch/src/orxonox/objects/CMakeLists.txt	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/CMakeLists.txt	(revision 3177)
@@ -3,12 +3,7 @@
   EventDispatcher.cc
   EventTarget.cc
-  GametypeMessageListener.cc
   GlobalShader.cc
   Level.cc
   Radar.cc
-  RadarListener.cc
-  RadarViewable.cc
-  Teamcolourable.cc
-  Tickable.cc
   Scene.cc
   Script.cc
Index: code/branches/pch/src/orxonox/objects/GametypeMessageListener.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/GametypeMessageListener.cc	(revision 3176)
+++ 	(revision )
@@ -1,40 +1,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:
- *      Fabian 'x3n' Landau
- *   Co-authors:
- *      ...
- *
- */
-
-#include "GametypeMessageListener.h"
-#include "core/CoreIncludes.h"
-
-namespace orxonox
-{
-    GametypeMessageListener::GametypeMessageListener()
-    {
-        RegisterRootObject(GametypeMessageListener);
-    }
-}
-
-
Index: code/branches/pch/src/orxonox/objects/GametypeMessageListener.h
===================================================================
--- code/branches/pch/src/orxonox/objects/GametypeMessageListener.h	(revision 3176)
+++ 	(revision )
@@ -1,49 +1,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:
- *      Fabian 'x3n' Landau
- *   Co-authors:
- *      ...
- *
- */
-
-#ifndef _GametypeMessageListener_H__
-#define _GametypeMessageListener_H__
-
-#include "OrxonoxPrereqs.h"
-#include "core/OrxonoxClass.h"
-
-namespace orxonox
-{
-    class _OrxonoxExport GametypeMessageListener : virtual public OrxonoxClass
-    {
-        public:
-            GametypeMessageListener();
-            virtual ~GametypeMessageListener() {}
-
-            virtual void announcemessage(const GametypeInfo* gtinfo, const std::string& message) {}
-            virtual void killmessage(const GametypeInfo* gtinfo, const std::string& message) {}
-            virtual void deathmessage(const GametypeInfo* gtinfo, const std::string& message) {}
-    };
-}
-
-#endif /* _GametypeMessageListener_H__ */
Index: code/branches/pch/src/orxonox/objects/Radar.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/Radar.cc	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/Radar.cc	(revision 3177)
@@ -39,5 +39,5 @@
 #include "core/ConsoleCommand.h"
 #include "core/ObjectList.h"
-#include "RadarListener.h"
+#include "interfaces/RadarListener.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/Radar.h
===================================================================
--- code/branches/pch/src/orxonox/objects/Radar.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/Radar.h	(revision 3177)
@@ -41,6 +41,6 @@
 
 #include "core/ObjectListIterator.h"
-#include "objects/Tickable.h"
-#include "RadarViewable.h"
+#include "interfaces/RadarViewable.h"
+#include "interfaces/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/RadarListener.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/RadarListener.cc	(revision 3176)
+++ 	(revision )
@@ -1,38 +1,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:
- *      Reto Grieder
- *   Co-authors:
- *      ...
- *
- */
-
-#include "RadarListener.h"
-#include "core/CoreIncludes.h"
-
-namespace orxonox
-{
-    RadarListener::RadarListener()
-    {
-        RegisterRootObject(RadarListener);
-    }
-}
Index: code/branches/pch/src/orxonox/objects/RadarListener.h
===================================================================
--- code/branches/pch/src/orxonox/objects/RadarListener.h	(revision 3176)
+++ 	(revision )
@@ -1,49 +1,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:
- *      Reto Grieder
- *   Co-authors:
- *      ...
- *
- */
-
-#ifndef _RadarListener_H__
-#define _RadarListener_H__
-
-#include "OrxonoxPrereqs.h"
-#include "core/OrxonoxClass.h"
-
-namespace orxonox
-{
-    class _OrxonoxExport RadarListener : virtual public OrxonoxClass
-    {
-    public:
-        RadarListener();
-        virtual ~RadarListener() { }
-
-        virtual void displayObject(RadarViewable* viewable, bool bIsMarked) = 0;
-        virtual float getRadarSensitivity() const = 0;
-        virtual void radarTick(float dt) = 0;
-    };
-}
-
-#endif /* _RadarListener_H__ */
Index: code/branches/pch/src/orxonox/objects/RadarViewable.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/RadarViewable.cc	(revision 3176)
+++ 	(revision )
@@ -1,161 +1,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:
- *      Reto Grieder
- *   Co-authors:
- *      ...
- *
- */
-
-#include "RadarViewable.h"
-
-#include <OgreSceneManager.h>
-#include <OgreSceneNode.h>
-#include <OgreEntity.h>
-
-#include "util/Debug.h"
-#include "util/String.h"
-#include "core/CoreIncludes.h"
-#include "tools/DynamicLines.h"
-#include "objects/worldentities/WorldEntity.h"
-#include "objects/Radar.h"
-#include "overlays/map/Map.h"
-
-namespace orxonox
-{
-    /**
-        @brief Constructor.
-    */
-    RadarViewable::RadarViewable()
-        : MapNode_(NULL)
-        , MapEntity_(NULL)
-        , line_(NULL)
-        , LineNode_(NULL)
-        , radarObjectCamouflage_(0.0f)
-        , radarObjectShape_(Dot)
-        , radarObjectDescription_("staticObject")
-    {
-        RegisterRootObject(RadarViewable);
-
-        this->bVisibility_ = true;
-        this->isHumanShip_ = false;
-
-        this->uniqueId_=getUniqueNumberString();
-/*
-        if(Map::getSingletonPtr() && Map::getSingletonPtr()->getMapSceneManagerPtr())
-        {
-            this->addEntity();
-        }
-
-        */
-    }
-
-
-    RadarViewable::~RadarViewable()
-    {
-        if (this->isHumanShip_ && MapNode_)
-            MapNode_->removeAllChildren();
-
-        if (MapNode_)
-            delete MapNode_;
-
-        if (MapEntity_)
-            delete MapEntity_;
-
-        if (line_)
-            delete line_;
-
-        if (LineNode_)
-            delete LineNode_;
-    }
-
-    void RadarViewable::addMapEntity()
-    { //TODO Check shape and add accordantly
-        if( this->MapNode_ && !this->MapEntity_ && Map::getSingletonPtr() && Map::getSingletonPtr()->getMapSceneManagerPtr() )
-        {
-            COUT(0) << "Adding " << this->uniqueId_ << " to Map.\n";
-            this->MapEntity_ = Map::getSingletonPtr()->getMapSceneManagerPtr()->createEntity( this->uniqueId_, "drone.mesh");
-            /*this->line_ =  Map::getSingletonPtr()->getMapSceneManagerPtr()->createManualObject(this->uniqueId_ + "_l");
-            this->line_->begin("Map/line_", Ogre::RenderOperation::OT_LINE_STRIP);
-            //line_->position(0, -it->getRVWorldPosition().y, 0);
-            //this->line_->position(0, -20, 0);
-            this->line_->position(0, 0, -10); //Front Arrow
-            this->line_->position(0, 0, 0);
-
-            this->line_->end(); */
-            this->line_ = new Ogre::DynamicLines(Ogre::RenderOperation::OT_LINE_LIST);
-            this->line_->addPoint( Vector3(0,0,0) );
-            this->line_->addPoint( Vector3(0,0,0) );
-
-            this->MapNode_->attachObject( this->MapEntity_ );
-
-            this->LineNode_ = this->MapNode_->createChildSceneNode();
-            this->LineNode_->attachObject( this->line_ );
-        }
-        else
-        {
-            COUT(0) << "Unable to load " << this->uniqueId_ << " to Map.\n";
-        }
-    }
-
-    void RadarViewable::updateMapPosition()
-    {
-        if( this->MapNode_ )
-        {
-            this->MapNode_->setPosition( this->getRVWorldPosition() );
-            this->MapNode_->translate( this->getRVOrientedVelocity(), (Ogre::Node::TransformSpace)3 );
-            this->MapNode_->setOrientation( this->getWorldEntity()->getOrientation() );
-//Vector3 v = this->getRVWorldPosition();
-            //this->line_->setPoint(1, Vector3(0,v.y,0) );
-            this->line_->setPoint(1, Vector3( 0, (int) -Map::getSingletonPtr()->movablePlane_->getDistance( this->getRVWorldPosition() ) ,0 ));
-            this->line_->update();
-            if( Map::getSingletonPtr()->playerShipNode_ )
-                this->LineNode_->setDirection( Map::getSingletonPtr()->playerShipNode_->getLocalAxes().GetColumn(1) ,Ogre::Node::TS_WORLD,Vector3::UNIT_Y);
-        }
-    }
-
-    void RadarViewable::setRadarObjectDescription(const std::string& str)
-    {
-        Radar* radar = Radar::getInstancePtr();
-        if (radar)
-            this->radarObjectShape_ = radar->addObjectDescription(str);
-        else
-        {
-            CCOUT(2) << "Attempting to access the radar, but the radar is non existent." << std::endl;
-        }
-        this->radarObjectDescription_ = str;
-    }
-
-    const Vector3& RadarViewable::getRVWorldPosition() const
-    {
-        const WorldEntity* object = this->getWorldEntity();
-        validate(object);
-        return object->getWorldPosition();
-    }
-
-    Vector3 RadarViewable::getRVOrientedVelocity() const
-    {
-        const WorldEntity* object = this->getWorldEntity();
-        validate(object);
-        return object->getWorldOrientation() * object->getVelocity();
-    }
-}
Index: code/branches/pch/src/orxonox/objects/RadarViewable.h
===================================================================
--- code/branches/pch/src/orxonox/objects/RadarViewable.h	(revision 3176)
+++ 	(revision )
@@ -1,139 +1,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:
- *      Reto Grieder
- *   Co-authors:
- *      ...
- *
- */
-
-#ifndef _RadarViewable_H__
-#define _RadarViewable_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include <string>
-#include <cassert>
-#include <OgrePrerequisites.h>
-
-#include "util/Math.h"
-#include "util/Debug.h"
-#include "core/OrxonoxClass.h"
-
-namespace orxonox
-{
-    /**
-    @brief Interface for receiving window events.
-    */
-    class _OrxonoxExport RadarViewable : virtual public OrxonoxClass
-    {
-    public:
-        enum Shape
-        {
-            Square,
-            Dot,
-            Triangle
-        };
-
-
-    public:
-        RadarViewable();
-        virtual ~RadarViewable();
-
-        inline void setRadarObjectCamouflage(float camouflage)
-            { this->radarObjectCamouflage_ = camouflage; }
-        inline float getRadarObjectCamouflage() const
-            { return this->radarObjectCamouflage_; }
-
-        inline void setRadarObjectColour(const ColourValue& colour)
-            { this->radarObjectColour_ = colour; }
-        inline const ColourValue& getRadarObjectColour() const
-            { return this->radarObjectColour_; }
-
-        void setRadarObjectDescription(const std::string& str);
-        inline const std::string& getRadarObjectDescription() const
-            { return this->radarObjectDescription_; }
-
-        inline void setRadarVisibility(bool b)
-            { this->bVisibility_ = b; }
-        inline bool getRadarVisibility() const
-            { return this->bVisibility_; }
-
-        virtual const WorldEntity* getWorldEntity() const = 0;
-
-        const Vector3& getRVWorldPosition() const;
-        Vector3 getRVOrientedVelocity() const;
-
-        inline void setRadarObjectShape(Shape shape)
-            { this->radarObjectShape_ = shape; }
-        inline Shape getRadarObjectShape() const
-            { return this->radarObjectShape_; }
-
-/*
-        inline void setMapNode(Ogre::SceneNode * node)
-            { this->MapNode_ = node; }
-        inline Ogre::SceneNode * getMapNode() const
-            { return this->MapNode_; }
-        inline void setMapEntity(Ogre::Entity * ent)
-            { this->MapEntity_ = ent; }
-        inline Ogre::Entity * getMapEntity() const
-            { return this->MapEntity_; }
-*/
-        //Used for Map
-        Ogre::SceneNode * MapNode_;
-        Ogre::Entity * MapEntity_;
-        Ogre::DynamicLines* line_;
-        Ogre::SceneNode * LineNode_;
-        void addMapEntity();
-        void updateMapPosition();
-        bool isHumanShip_;
-        inline const std::string& getUniqueId()
-        {
-            return this->uniqueId_;
-        }
-        //friend class Map;
-
-    private:
-        void validate(const WorldEntity* object) const
-        {
-            if (!object)
-            {
-                COUT(1) << "Assertation: Every RadarViewable has to be assigned a WorldEntity pointer!" << std::endl;
-                assert(0);
-            }
-        }
-
-        bool bVisibility_;
-        //Map
-        std::string uniqueId_;
-
-
-        //Radar
-        float radarObjectCamouflage_;
-        Shape radarObjectShape_;
-        std::string radarObjectDescription_;
-        ColourValue radarObjectColour_;
-
-    };
-}
-
-#endif /* _RadarViewable_H__ */
Index: code/branches/pch/src/orxonox/objects/Scene.h
===================================================================
--- code/branches/pch/src/orxonox/objects/Scene.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/Scene.h	(revision 3177)
@@ -41,5 +41,5 @@
 #include "core/BaseObject.h"
 #include "network/synchronisable/Synchronisable.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/Teamcolourable.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/Teamcolourable.cc	(revision 3176)
+++ 	(revision )
@@ -1,38 +1,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:
- *      Fabian 'x3n' Landau
- *   Co-authors:
- *      ...
- *
- */
-
-#include "Teamcolourable.h"
-#include "core/CoreIncludes.h"
-
-namespace orxonox
-{
-    Teamcolourable::Teamcolourable()
-    {
-        RegisterRootObject(Teamcolourable);
-    }
-}
Index: code/branches/pch/src/orxonox/objects/Teamcolourable.h
===================================================================
--- code/branches/pch/src/orxonox/objects/Teamcolourable.h	(revision 3176)
+++ 	(revision )
@@ -1,49 +1,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:
- *      Fabian 'x3n' Landau
- *   Co-authors:
- *      ...
- *
- */
-
-#ifndef _Teamcolourable_H__
-#define _Teamcolourable_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include "util/UtilPrereqs.h"
-#include "core/OrxonoxClass.h"
-
-namespace orxonox
-{
-    class _OrxonoxExport Teamcolourable : virtual public OrxonoxClass
-    {
-        public:
-            virtual void setTeamColour(const ColourValue& colour) = 0;
-
-        protected:
-            Teamcolourable();
-    };
-}
-
-#endif /* _Teamcolourable_H__ */
Index: code/branches/pch/src/orxonox/objects/Test.h
===================================================================
--- code/branches/pch/src/orxonox/objects/Test.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/Test.h	(revision 3177)
@@ -33,5 +33,5 @@
 #include "core/BaseObject.h"
 #include "network/synchronisable/Synchronisable.h"
-#include "Tickable.h"
+#include "interfaces/Tickable.h"
 
 
Index: code/branches/pch/src/orxonox/objects/Tickable.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/Tickable.cc	(revision 3176)
+++ 	(revision )
@@ -1,41 +1,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:
- *      Fabian 'x3n' Landau
- *   Co-authors:
- *      ...
- *
- */
-
-#include "Tickable.h"
-#include "core/CoreIncludes.h"
-
-namespace orxonox
-{
-    /**
-        @brief Constructor: Registers the object in the Tickable-list
-    */
-    Tickable::Tickable()
-    {
-        RegisterRootObject(Tickable);
-    }
-}
Index: code/branches/pch/src/orxonox/objects/Tickable.h
===================================================================
--- code/branches/pch/src/orxonox/objects/Tickable.h	(revision 3176)
+++ 	(revision )
@@ -1,68 +1,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:
- *      Fabian 'x3n' Landau
- *   Co-authors:
- *      ...
- *
- */
-
-/*!
-    @file
-    @brief Declaration of the Tickable interface.
-
-    The Tickable interface provides a tick(dt) function, that gets called every frame.
-    float dt is the time since the last frame in seconds.
-
-    Attention:
-    Classes derived from a Tickable that want to have a tick(dt) function on their part, MUST call the
-    parent::tick(dt) function explicitly in their implementation of tick(dt) because it's a virtual function.
-*/
-
-#ifndef _Tickable_H__
-#define _Tickable_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include "core/OrxonoxClass.h"
-#include "core/Super.h"
-
-namespace orxonox
-{
-    //! The Tickable interface provides a tick(dt) function, that gets called every frame.
-    class _OrxonoxExport Tickable : virtual public OrxonoxClass
-    {
-        public:
-            /**
-                @brief Gets called every frame.
-                @param dt The time since the last frame in seconds
-            */
-            virtual void tick(float dt) = 0;
-
-        protected:
-            Tickable();
-    };
-
-    SUPER_FUNCTION(1, Tickable, tick, true);
-}
-
-#endif /* _Tickable_H__ */
Index: code/branches/pch/src/orxonox/objects/controllers/AIController.h
===================================================================
--- code/branches/pch/src/orxonox/objects/controllers/AIController.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/controllers/AIController.h	(revision 3177)
@@ -33,6 +33,6 @@
 
 #include "tools/Timer.h"
+#include "interfaces/Tickable.h"
 #include "ArtificialController.h"
-#include "objects/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/controllers/ArtificialController.h
===================================================================
--- code/branches/pch/src/orxonox/objects/controllers/ArtificialController.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/controllers/ArtificialController.h	(revision 3177)
@@ -33,6 +33,6 @@
 
 #include "util/Math.h"
+#include "interfaces/PawnListener.h"
 #include "Controller.h"
-#include "tools/PawnListener.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/controllers/PongAI.h
===================================================================
--- code/branches/pch/src/orxonox/objects/controllers/PongAI.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/controllers/PongAI.h	(revision 3177)
@@ -34,6 +34,6 @@
 #include <list>
 #include "util/Math.h"
+#include "interfaces/Tickable.h"
 #include "Controller.h"
-#include "objects/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/controllers/WaypointController.h
===================================================================
--- code/branches/pch/src/orxonox/objects/controllers/WaypointController.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/controllers/WaypointController.h	(revision 3177)
@@ -33,6 +33,6 @@
 
 #include <vector>
+#include "interfaces/Tickable.h"
 #include "ArtificialController.h"
-#include "objects/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/gametypes/Gametype.h
===================================================================
--- code/branches/pch/src/orxonox/objects/gametypes/Gametype.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/gametypes/Gametype.h	(revision 3177)
@@ -37,5 +37,5 @@
 #include "core/Identifier.h"
 #include "objects/worldentities/ControllableEntity.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 #include "objects/infos/GametypeInfo.h"
 
Index: code/branches/pch/src/orxonox/objects/gametypes/TeamDeathmatch.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/gametypes/TeamDeathmatch.cc	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/gametypes/TeamDeathmatch.cc	(revision 3177)
@@ -31,5 +31,5 @@
 #include "core/CoreIncludes.h"
 #include "core/ConfigValueIncludes.h"
-#include "objects/Teamcolourable.h"
+#include "interfaces/Teamcolourable.h"
 #include "objects/worldentities/TeamSpawnPoint.h"
 
Index: code/branches/pch/src/orxonox/objects/gametypes/UnderAttack.h
===================================================================
--- code/branches/pch/src/orxonox/objects/gametypes/UnderAttack.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/gametypes/UnderAttack.h	(revision 3177)
@@ -33,5 +33,5 @@
 
 #include "TeamDeathmatch.h"
-#include "objects/worldentities/pawns/Pawn.h"
+#include "interfaces/PawnListener.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/infos/GametypeInfo.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/infos/GametypeInfo.cc	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/infos/GametypeInfo.cc	(revision 3177)
@@ -33,5 +33,5 @@
 #include "network/NetworkFunction.h"
 #include "network/Host.h"
-#include "objects/GametypeMessageListener.h"
+#include "interfaces/GametypeMessageListener.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/items/Engine.h
===================================================================
--- code/branches/pch/src/orxonox/objects/items/Engine.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/items/Engine.h	(revision 3177)
@@ -33,5 +33,5 @@
 
 #include "Item.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 #include "util/Math.h"
 
Index: code/branches/pch/src/orxonox/objects/pickup/DroppedItem.h
===================================================================
--- code/branches/pch/src/orxonox/objects/pickup/DroppedItem.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/pickup/DroppedItem.h	(revision 3177)
@@ -37,5 +37,5 @@
 #include "OrxonoxPrereqs.h"
 
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 #include "objects/worldentities/StaticEntity.h"
 #include "tools/Timer.h"
Index: code/branches/pch/src/orxonox/objects/pickup/PickupSpawner.h
===================================================================
--- code/branches/pch/src/orxonox/objects/pickup/PickupSpawner.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/pickup/PickupSpawner.h	(revision 3177)
@@ -37,5 +37,5 @@
 #include "OrxonoxPrereqs.h"
 
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 #include "objects/worldentities/StaticEntity.h"
 #include "tools/Timer.h"
Index: code/branches/pch/src/orxonox/objects/weaponsystem/projectiles/Projectile.h
===================================================================
--- code/branches/pch/src/orxonox/objects/weaponsystem/projectiles/Projectile.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/weaponsystem/projectiles/Projectile.h	(revision 3177)
@@ -32,4 +32,5 @@
 #include "OrxonoxPrereqs.h"
 
+#include "interfaces/PawnListener.h"
 #include "objects/worldentities/MovableEntity.h"
 #include "objects/worldentities/pawns/Pawn.h"
Index: code/branches/pch/src/orxonox/objects/worldentities/Backlight.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/Backlight.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/Backlight.h	(revision 3177)
@@ -32,5 +32,5 @@
 #include "OrxonoxPrereqs.h"
 #include "FadingBillboard.h"
-#include "tools/TimeFactorListener.h"
+#include "interfaces/TimeFactorListener.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/Billboard.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/Billboard.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/Billboard.h	(revision 3177)
@@ -34,5 +34,5 @@
 #include "util/Math.h"
 #include "tools/BillboardSet.h"
-#include "objects/Teamcolourable.h"
+#include "interfaces/Teamcolourable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/BlinkingBillboard.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/BlinkingBillboard.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/BlinkingBillboard.h	(revision 3177)
@@ -32,5 +32,5 @@
 #include "OrxonoxPrereqs.h"
 #include "Billboard.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/Camera.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/Camera.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/Camera.h	(revision 3177)
@@ -34,5 +34,5 @@
 #include <OgrePrerequisites.h>
 #include "objects/worldentities/StaticEntity.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/FadingBillboard.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/FadingBillboard.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/FadingBillboard.h	(revision 3177)
@@ -32,5 +32,5 @@
 #include "OrxonoxPrereqs.h"
 #include "Billboard.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 #include "tools/Timer.h"
 
Index: code/branches/pch/src/orxonox/objects/worldentities/ForceField.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/ForceField.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/ForceField.h	(revision 3177)
@@ -32,5 +32,5 @@
 
 #include "StaticEntity.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/Light.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/Light.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/Light.h	(revision 3177)
@@ -37,5 +37,5 @@
 
 #include "util/Math.h"
-#include "objects/Teamcolourable.h"
+#include "interfaces/Teamcolourable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/MobileEntity.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/MobileEntity.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/MobileEntity.h	(revision 3177)
@@ -33,5 +33,5 @@
 
 #include "WorldEntity.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/Planet.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/Planet.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/Planet.h	(revision 3177)
@@ -37,5 +37,5 @@
 #include "tools/Mesh.h"
 #include "MovableEntity.h"
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/pawns/Pawn.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/pawns/Pawn.cc	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/pawns/Pawn.cc	(revision 3177)
@@ -34,4 +34,5 @@
 #include "util/Math.h"
 #include "PawnManager.h"
+#include "interfaces/PawnListener.h"
 #include "objects/infos/PlayerInfo.h"
 #include "objects/gametypes/Gametype.h"
Index: code/branches/pch/src/orxonox/objects/worldentities/pawns/Pawn.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/pawns/Pawn.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/pawns/Pawn.h	(revision 3177)
@@ -32,5 +32,5 @@
 #include "OrxonoxPrereqs.h"
 #include "objects/worldentities/ControllableEntity.h"
-#include "objects/RadarViewable.h"
+#include "interfaces/RadarViewable.h"
 #include "objects/pickup/PickupCollection.h"
 
Index: code/branches/pch/src/orxonox/objects/worldentities/pawns/TeamBaseMatchBase.cc
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/pawns/TeamBaseMatchBase.cc	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/pawns/TeamBaseMatchBase.cc	(revision 3177)
@@ -31,5 +31,6 @@
 #include "core/CoreIncludes.h"
 #include "objects/gametypes/TeamBaseMatch.h"
-#include "objects/Teamcolourable.h"
+#include "interfaces/Teamcolourable.h"
+#include "interfaces/PawnListener.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/triggers/CheckPoint.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/triggers/CheckPoint.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/triggers/CheckPoint.h	(revision 3177)
@@ -36,5 +36,5 @@
 
 #include "DistanceTrigger.h"
-#include "objects/RadarViewable.h"
+#include "interfaces/RadarViewable.h"
 
 namespace orxonox
Index: code/branches/pch/src/orxonox/objects/worldentities/triggers/Trigger.h
===================================================================
--- code/branches/pch/src/orxonox/objects/worldentities/triggers/Trigger.h	(revision 3176)
+++ code/branches/pch/src/orxonox/objects/worldentities/triggers/Trigger.h	(revision 3177)
@@ -35,5 +35,5 @@
 #include "OrxonoxPrereqs.h"
 
-#include "objects/Tickable.h"
+#include "interfaces/Tickable.h"
 #include "objects/worldentities/StaticEntity.h"
 #include "tools/BillboardSet.h"
