Index: code/branches/questsystem2/src/orxonox/objects/quest/GlobalQuest.cc
===================================================================
--- code/branches/questsystem2/src/orxonox/objects/quest/GlobalQuest.cc	(revision 2251)
+++ code/branches/questsystem2/src/orxonox/objects/quest/GlobalQuest.cc	(revision 2258)
@@ -147,4 +147,8 @@
     bool GlobalQuest::isStartable(const PlayerInfo* player) const
     {
+        if(!(this->getParentQuest() == NULL || this->getParentQuest()->isActive(player)))
+        {
+            return false;
+        }
         return (this->isInactive(player) && !(this->status_ == questStatus::completed || this->status_ == questStatus::failed));
     }
Index: code/branches/questsystem2/src/orxonox/objects/quest/LocalQuest.cc
===================================================================
--- code/branches/questsystem2/src/orxonox/objects/quest/LocalQuest.cc	(revision 2251)
+++ code/branches/questsystem2/src/orxonox/objects/quest/LocalQuest.cc	(revision 2258)
@@ -131,4 +131,8 @@
     bool LocalQuest::isStartable(const PlayerInfo* player) const
     {
+        if(!(this->getParentQuest() == NULL || this->getParentQuest()->isActive(player)))
+        {
+            return false;
+        }
         return this->isInactive(player);
     }
Index: code/branches/questsystem2/src/orxonox/objects/quest/Quest.h
===================================================================
--- code/branches/questsystem2/src/orxonox/objects/quest/Quest.h	(revision 2251)
+++ code/branches/questsystem2/src/orxonox/objects/quest/Quest.h	(revision 2258)
@@ -90,26 +90,26 @@
                 { return this->parentQuest_; }
                 
-        /**
-        @brief Returns the list of subquests.
-        @return Returns a reference to the list of subquests of the quest.
-        */
-            inline const std::list<Quest*> & getSubQuestList(void) const
-                { return this->subQuests_; }
-                
-        /**
-        @brief Returns the list of all QuestHints of this Quest.
-        @return Returns a reference to the list of QuestHints of the Quest.
-        */
-        inline const std::list<QuestHint*> & getHintsList(void) const
-                { return this->hints_; }
-
-            bool isInactive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'inactive'.
-            bool isActive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'active'.
-            bool isFailed(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'failed'.
-            bool isCompleted(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'completed'.
-
-            bool start(PlayerInfo* player); //!< Sets a Quest to active.
-        virtual bool fail(PlayerInfo* player) = 0; //!< Fails the Quest.
-            virtual bool complete(PlayerInfo* player) = 0; //!< Completes the Quest.
+	    /**
+	    @brief Returns the list of subquests.
+	    @return Returns a reference to the list of subquests of the quest.
+	    */
+	    inline const std::list<Quest*> & getSubQuestList(void) const
+		{ return this->subQuests_; }
+		    
+	    /**
+	    @brief Returns the list of all QuestHints of this Quest.
+	    @return Returns a reference to the list of QuestHints of the Quest.
+	    */
+	    inline const std::list<QuestHint*> & getHintsList(void) const
+		{ return this->hints_; }
+	    
+	    bool isInactive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'inactive'.
+	    bool isActive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'active'.
+	    bool isFailed(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'failed'.
+	    bool isCompleted(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'completed'.
+	    
+	    bool start(PlayerInfo* player); //!< Sets a Quest to active.
+	    virtual bool fail(PlayerInfo* player) = 0; //!< Fails the Quest.
+	    virtual bool complete(PlayerInfo* player) = 0; //!< Completes the Quest.
 
         protected:
@@ -131,9 +131,9 @@
                 { return this->failEffects_; }
                 
-        /**
-        @brief Returns the list of complete QuestEffects.
-        @return Returns a reference to the list of complete QuestEffects.
-        */
-        inline std::list<QuestEffect*> & getCompleteEffectList(void)
+	    /**
+	    @brief Returns the list of complete QuestEffects.
+	    @return Returns a reference to the list of complete QuestEffects.
+	    */
+	    inline std::list<QuestEffect*> & getCompleteEffectList(void)
                 { return this->completeEffects_; }
 
