Index: code/branches/questsystem/src/orxonox/objects/GlobalQuest.cc
===================================================================
--- code/branches/questsystem/src/orxonox/objects/GlobalQuest.cc	(revision 2022)
+++ code/branches/questsystem/src/orxonox/objects/GlobalQuest.cc	(revision 2043)
@@ -72,5 +72,5 @@
         Returns true if the quest can be started, false if not.
     */
-    bool GlobalQuest::isStartable(Player* player)
+    bool GlobalQuest::isStartable(const Player* player) const
     {
         return this->isInactive(player) || this->isActive(player);
@@ -85,5 +85,5 @@
         Returns true if the quest can be failed, false if not.
     */
-    bool GlobalQuest::isFailable(Player* player)
+    bool GlobalQuest::isFailable(const Player* player) const
     {
         return this->isActive(player);
@@ -98,5 +98,5 @@
         Returns true if the quest can be completed, false if not.
     */
-    bool GlobalQuest::isCompletable(Player* player)
+    bool GlobalQuest::isCompletable(const Player* player) const
     {
         return this->isActive(player);
@@ -109,5 +109,5 @@
         The player.
     */
-    questStatus::Enum GlobalQuest::getStatus(const Player* player)
+    questStatus::Enum GlobalQuest::getStatus(const Player* player) const
     {
         //TDO: Does this really work???
Index: code/branches/questsystem/src/orxonox/objects/GlobalQuest.h
===================================================================
--- code/branches/questsystem/src/orxonox/objects/GlobalQuest.h	(revision 2022)
+++ code/branches/questsystem/src/orxonox/objects/GlobalQuest.h	(revision 2043)
@@ -53,9 +53,9 @@
 	    
 	protected:
-            virtual bool isStartable(Player* player); //!< Checks whether the quest can be started.
-            virtual bool isFailable(Player* player); //!< Checks whether the quest can be failed.
-            virtual bool isCompletable(Player* player); //!< Checks whether the quest can be completed.
+            virtual bool isStartable(const Player* player) const; //!< Checks whether the quest can be started.
+            virtual bool isFailable(const Player* player) const; //!< Checks whether the quest can be failed.
+            virtual bool isCompletable(const Player* player) const; //!< Checks whether the quest can be completed.
 	
-	    virtual questStatus::Enum getStatus(const Player* player); //!< Returns the status of the quest for a specific player.
+	    virtual questStatus::Enum getStatus(const Player* player) const; //!< Returns the status of the quest for a specific player.
 	    virtual bool setStatus(Player* player, const questStatus::Enum & status); //!< Sets the status for a specific player.
 	    
Index: code/branches/questsystem/src/orxonox/objects/LocalQuest.cc
===================================================================
--- code/branches/questsystem/src/orxonox/objects/LocalQuest.cc	(revision 2022)
+++ code/branches/questsystem/src/orxonox/objects/LocalQuest.cc	(revision 2043)
@@ -72,5 +72,5 @@
         Returns true if the quest can be started, false if not.
     */
-    bool LocalQuest::isStartable(Player* player)
+    bool LocalQuest::isStartable(const Player* player) const
     {
         return this->isInactive(player);
@@ -85,5 +85,5 @@
         Returns true if the quest can be failed, false if not.
     */
-    bool LocalQuest::isFailable(Player* player)
+    bool LocalQuest::isFailable(const Player* player) const
     {
         return this->isActive(player);
@@ -98,5 +98,5 @@
         Returns true if the quest can be completed, false if not.
     */
-    bool LocalQuest::isCompletable(Player* player)
+    bool LocalQuest::isCompletable(const Player* player) const
     {
         return this->isActive(player);
@@ -111,5 +111,5 @@
         Returns the status of the quest for the input player.
     */
-    questStatus::Enum LocalQuest::getStatus(const Player* player)
+    questStatus::Enum LocalQuest::getStatus(const Player* player) const
     {
         std::map<Player*, questStatus::Enum>::const_iterator it = this->playerStatus_.find((Player*)(void*)player); //Thx. to x3n for the (Player*)(void*) 'hack'.
Index: code/branches/questsystem/src/orxonox/objects/LocalQuest.h
===================================================================
--- code/branches/questsystem/src/orxonox/objects/LocalQuest.h	(revision 2022)
+++ code/branches/questsystem/src/orxonox/objects/LocalQuest.h	(revision 2043)
@@ -53,9 +53,9 @@
 	    
 	protected:
-            virtual bool isStartable(Player* player); //!< Checks whether the quest can be started.
-            virtual bool isFailable(Player* player); //!< Checks whether the quest can be failed.
-            virtual bool isCompletable(Player* player); //!< Checks whether the quest can be completed.
+            virtual bool isStartable(const Player* player) const; //!< Checks whether the quest can be started.
+            virtual bool isFailable(const Player* player) const; //!< Checks whether the quest can be failed.
+            virtual bool isCompletable(const Player* player) const; //!< Checks whether the quest can be completed.
 	
-            virtual questStatus::Enum getStatus(const Player* player); //!< Returns the status of the quest for a specific player.
+            virtual questStatus::Enum getStatus(const Player* player) const; //!< Returns the status of the quest for a specific player.
             virtual bool setStatus(Player* player, const questStatus::Enum & status); //!< Sets the status for a specific player.
                 
Index: code/branches/questsystem/src/orxonox/objects/Quest.h
===================================================================
--- code/branches/questsystem/src/orxonox/objects/Quest.h	(revision 2022)
+++ code/branches/questsystem/src/orxonox/objects/Quest.h	(revision 2043)
@@ -80,11 +80,11 @@
 	    bool addSubQuest(Quest* quest); //!< Adds a sub quest to the quest.
 	    
-	    inline bool isInactive(Player* player) //!< Returns true if the quest status for the specific player is 'inactive'.
+	    inline bool isInactive(const Player* player) const //!< Returns true if the quest status for the specific player is 'inactive'.
 	       { return this->getStatus(player) == questStatus::inactive; }
-	    inline bool isActive(Player* player) //!< Returns true if the quest status for the specific player is 'active'.
+	    inline bool isActive(const Player* player) const //!< Returns true if the quest status for the specific player is 'active'.
 	       { return this->getStatus(player) == questStatus::active; }
-	    inline bool isFailed(Player* player) //!< Returns true if the quest status for the specific player is 'failed'.
+	    inline bool isFailed(const Player* player) const //!< Returns true if the quest status for the specific player is 'failed'.
 	       { return this->getStatus(player) == questStatus::failed; }
-	    inline bool isCompleted(Player* player) //!< Returns true if the quest status for the specific player is 'completed'.
+	    inline bool isCompleted(const Player* player) const //!< Returns true if the quest status for the specific player is 'completed'.
 	       { return this->getStatus(player) == questStatus::completed; }
                 
@@ -98,10 +98,10 @@
             void initialize(void); //!< Initialized the object.
             
-            virtual bool isStartable(Player* player) = 0; //!< Checks whether the quest can be started.
-            virtual bool isFailable(Player* player) = 0; //!< Checks whether the quest can be failed.
-            virtual bool isCompletable(Player* player) = 0; //!< Checks whether the quest can be completed.
+            virtual bool isStartable(const Player* player) const = 0; //!< Checks whether the quest can be started.
+            virtual bool isFailable(const Player* player) const = 0; //!< Checks whether the quest can be failed.
+            virtual bool isCompletable(const Player* player) const = 0; //!< Checks whether the quest can be completed.
             
             //TDO: Get the parameter const...
-            virtual questStatus::Enum getStatus(const Player* player) = 0; //!< Returns the status of the quest for a specific player.
+            virtual questStatus::Enum getStatus(const Player* player) const = 0; //!< Returns the status of the quest for a specific player.
             virtual bool setStatus(Player* player, const questStatus::Enum & status) = 0; //!< Changes the status for a specific player.
             
Index: code/branches/questsystem/src/orxonox/objects/Rewardable.cc
===================================================================
--- code/branches/questsystem/src/orxonox/objects/Rewardable.cc	(revision 2022)
+++ code/branches/questsystem/src/orxonox/objects/Rewardable.cc	(revision 2043)
@@ -33,6 +33,4 @@
 namespace orxonox {
 
-    CreateFactory(Rewardable);
-
     Rewardable::Rewardable() : BaseObject()
     {
