Index: code/branches/QuestGuide_HS16/src/modules/waypoints/Waypoint.h
===================================================================
--- code/branches/QuestGuide_HS16/src/modules/waypoints/Waypoint.h	(revision 11297)
+++ code/branches/QuestGuide_HS16/src/modules/waypoints/Waypoint.h	(revision 11298)
@@ -52,5 +52,5 @@
 
             
-
+            bool waypoint_actived;
 
         private:
@@ -59,5 +59,4 @@
             Model* model;
             DistanceTrigger* distancetrigger;
-            bool waypoint_actived;
             int order;
             
Index: code/branches/QuestGuide_HS16/src/modules/waypoints/WaypointGroup.cc
===================================================================
--- code/branches/QuestGuide_HS16/src/modules/waypoints/WaypointGroup.cc	(revision 11297)
+++ code/branches/QuestGuide_HS16/src/modules/waypoints/WaypointGroup.cc	(revision 11298)
@@ -16,4 +16,6 @@
     {
         RegisterObject(WaypointGroup);
+        activeWaypoint = nullptr;
+
         //model = new Model(this->getContext());
         //model->setMeshSource("cube.mesh");  // Name of the arrow file for now bottle
@@ -60,12 +62,22 @@
 
     Waypoint* WaypointGroup::getActive(){
-          for (Waypoint* object : this->waypoints_){
+          if (activeWaypoint == nullptr){
+                                    orxout() << "OOOOOOOOOO" << endl;
+
+            activateNext();
+
+          }            
+          return activeWaypoint;
+    }
+
+    Waypoint* WaypointGroup::activateNext(){
+        for (Waypoint* object : this->waypoints_){
             if(!(object->waypoint_actived)){
                 object->enable_waypoint();
-                return object;
+                activeWaypoint = object;
             }
         }
+        return activeWaypoint;
     }
-
 
 
Index: code/branches/QuestGuide_HS16/src/modules/waypoints/WaypointGroup.h
===================================================================
--- code/branches/QuestGuide_HS16/src/modules/waypoints/WaypointGroup.h	(revision 11297)
+++ code/branches/QuestGuide_HS16/src/modules/waypoints/WaypointGroup.h	(revision 11298)
@@ -45,6 +45,8 @@
 
 
-        
+        Waypoint* getActive();
+          
 
+        Waypoint* activateNext();
 
            
@@ -58,4 +60,5 @@
          
         std::set<Waypoint*> waypoints_;
+        Waypoint* activeWaypoint;
 
             // network callbacks
Index: code/branches/QuestGuide_HS16/src/modules/waypoints/Waypointarrow.cc
===================================================================
--- code/branches/QuestGuide_HS16/src/modules/waypoints/Waypointarrow.cc	(revision 11297)
+++ code/branches/QuestGuide_HS16/src/modules/waypoints/Waypointarrow.cc	(revision 11298)
@@ -19,4 +19,5 @@
        // model->setOrientation(Vector3(0,0,-1));
         model->setPosition(Vector3(0,15,0));
+        waypoints_ = nullptr;
         
     }
@@ -26,9 +27,57 @@
     }
 
+   /*  
+    Waypoint* WaypointGroup::getActive(){
+          for (Waypoint* object : this->waypoints_){
+            if(!(object->waypoint_actived)){
+                object->enable_waypoint();
+                return object;
+            }
+        }
+    }
+
+
+    void tick::getActive
+*/
+
+
+    WaypointGroup* Waypointarrow::getWaypointgroup()
+    {
+        if (waypoints_ == nullptr){
+
+            for (WaypointGroup* group : ObjectList<WaypointGroup>())
+                waypoints_ = group;
+        
+        }
+
+        return waypoints_;
+    }
+
+
+
+
+    void Waypointarrow::tick(float dt){
      
+        if (getWaypointgroup() == nullptr){
+                    orxout() << "Second" << endl;
 
+            return;
+        }     
+               
+        waypoints_ = getWaypointgroup();
+               
+        waypoint = waypoints_->getActive();
+                       
+        Vector3 waypoint_position = waypoint->getWorldPosition();
+     
+        orxout() << "dsfsf" << waypoint_position.x << endl;
+        model->lookAt(waypoint_position - this->getWorldPosition());
+
+        
+    }
 
     void Waypointarrow::XMLPort(Element& xmlelement, XMLPort::Mode mode){
         SUPER(Waypointarrow, XMLPort, xmlelement, mode); // From the SpaceShip.cc file
+        
         //XMLPortParamTemplate(WorldEntity, "orientation", setOrientation, getOrientation, xmlelement, mode, Vector3)
 
Index: code/branches/QuestGuide_HS16/src/modules/waypoints/Waypointarrow.h
===================================================================
--- code/branches/QuestGuide_HS16/src/modules/waypoints/Waypointarrow.h	(revision 11297)
+++ code/branches/QuestGuide_HS16/src/modules/waypoints/Waypointarrow.h	(revision 11298)
@@ -31,5 +31,5 @@
     */
 
-    class _OrxonoxExport Waypointarrow : public StaticEntity {
+    class _OrxonoxExport Waypointarrow : public StaticEntity, public Tickable {
         
         public:
@@ -37,9 +37,10 @@
             Waypointarrow(Context* context);
             virtual ~Waypointarrow();
+            WaypointGroup* getWaypointgroup();
 
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
 
-
+            virtual void tick(float dt);
 
 
@@ -48,5 +49,6 @@
             //virtual bool isCollisionTypeLegal(CollisionType type) const override;
             Model* model;
-            //Waypoint* waypoint;
+            WaypointGroup* waypoints_;
+            Waypoint* waypoint;
             // network callbacks
     };
