Index: branches/single_player_map/src/lib/collision_reaction/cr_object_damage.cc
===================================================================
--- branches/single_player_map/src/lib/collision_reaction/cr_object_damage.cc	(revision 9032)
+++ branches/single_player_map/src/lib/collision_reaction/cr_object_damage.cc	(revision 9035)
@@ -56,7 +56,7 @@
   float damage = 0.0f;
 
- // PRINTF(0)("Dealing damage - Handling collision: %s vs %s\n",
-        //    collision->getEntityA()->getClassName(),
-        //    collision->getEntityB()->getClassName());
+  PRINTF(0)("Dealing damage - Handling collision: %s vs %s\n",
+            collision->getEntityA()->getClassName(),
+            collision->getEntityB()->getClassName());
 
   // the collision damage been dealed by the entity
@@ -64,12 +64,12 @@
     damage = collision->getEntityB()->getDamage();
     collision->getEntityA()->hit(damage, collision->getEntityB());
+    PRINTF(4)("Dealing damage - %f damage to %s \n", damage, collision->getEntityA()->getClassName());
   }
- // PRINTF(4)("Dealing damage - %f damage to %s \n", damage, collision->getEntityA()->getClassName());
 
   if( collision->isEntityBCollide()) {
     damage = collision->getEntityA()->getDamage();
     collision->getEntityB()->hit(damage, collision->getEntityA());
+    PRINTF(4)("Dealing damage - %f damage to %s \n", damage, collision->getEntityB()->getClassName());
   }
- // PRINTF(4)("Dealing damage - %f damage to %s \n", damage, collision->getEntityB()->getClassName());
 
   collision->flushCollisionEvents();
Index: branches/single_player_map/src/story_entities/game_world.cc
===================================================================
--- branches/single_player_map/src/story_entities/game_world.cc	(revision 9032)
+++ branches/single_player_map/src/story_entities/game_world.cc	(revision 9035)
@@ -308,5 +308,5 @@
     /* update the state */
     //this->update (); /// LESS REDUNDANCY.
-//     PNode::getNullParent()->updateNode(this->dtS);
+    PNode::getNullParent()->updateNode(this->dtS);
 
 
Index: branches/single_player_map/src/world_entities/npcs/generic_npc.cc
===================================================================
--- branches/single_player_map/src/world_entities/npcs/generic_npc.cc	(revision 9032)
+++ branches/single_player_map/src/world_entities/npcs/generic_npc.cc	(revision 9035)
@@ -40,7 +40,4 @@
                         ->addMethod("turnTo", ExecutorLua1<GenericNPC,float>(&GenericNPC::turnTo))
                         ->addMethod("finalGoalReached", ExecutorLua0ret<GenericNPC,bool>(&GenericNPC::finalGoalReached))
-                        // Animation and sound
-                        ->addMethod("playAnimation", ExecutorLua2<GenericNPC,int,int>(&GenericNPC::playAnimation))
-                        ->addMethod("playSound", ExecutorLua1<GenericNPC,const std::string&>(&GenericNPC::playSound))
                         // Display
                         ->addMethod("hide", ExecutorLua0<WorldEntity>(&WorldEntity::hide))
@@ -91,5 +88,5 @@
 
   // collision reaction registration
-  this->subscribeReaction(CREngine::CR_PHYSICS_GROUND_WALK, CL_BSP_ENTITY);
+//   this->subscribeReaction(CREngine::CR_PHYSICS_GROUND_WALK, CL_BSP_ENTITY);
 }
 
@@ -172,5 +169,5 @@
  * @param filename: name of the file
  */
-void GenericNPC::playSound(const std::string& filename)
+void GenericNPC::playSound(std::string filename)
 {}
 
@@ -199,5 +196,5 @@
 
         Vector dir = (currentAnimation.v - this->getAbsCoor());
-        dir.y = 0.0f;
+//         dir.y = 0.0f;
         dir.getNormalized();
         this->setAbsDir(Quaternion(dir, Vector(0.0, 1.0, 0.0)) * Quaternion(-M_PI_2, Vector(0.0, 1.0, 0.0)));
@@ -267,5 +264,5 @@
 
         Vector dir = (currentAnimation.v - this->getAbsCoor());
-        dir.y = 0.0f;
+//         dir.y = 0.0f;
         dir.getNormalized();
         this->setAbsDirSoft(Quaternion(dir, Vector(0.0, 1.0, 0.0)) * Quaternion(-M_PI_2, Vector(0.0, 1.0, 0.0)), 4.0);
@@ -478,7 +475,10 @@
           else
           {
-            dest.y = 0.0f;
-            this->shiftCoor(dest.getNormalized() * currentAnimation.speed * dt);
-
+//             dest.y = 0.0f;
+            Vector move = dest.getNormalized() * currentAnimation.speed * dt;
+            this->shiftCoor(move);
+            PRINTF(0)("name %s, move:\n", this->getName());
+            move.debug();
+//             this->shiftCoor(Vector(0.0, 1.0, 1.0));
           }
         }
@@ -525,17 +525,18 @@
   }
 
-  // physical falling of the player
-  if( !this->isOnGround())
-  {
-    this->fallVelocity += 300.0f * dt;
-    velocity -= Vector(0.0, 1.0, 0.0) * this->fallVelocity;
-   // PRINTF(0)("%s is not on ground\n", this->getName());
-  }
-  else
-  {
-    this->fallVelocity = 0.0f;
-  }
-
-  this->shiftCoor(Vector(0, -this->fallVelocity * dt,0));
+//   // physical falling of the player
+//   if( !this->isOnGround())
+//   {
+//     this->fallVelocity += 300.0f * dt;
+//     velocity -= Vector(0.0, 1.0, 0.0) * this->fallVelocity;
+//    // PRINTF(0)("%s is not on ground\n", this->getName());
+//
+//     this->shiftCoor(Vector(0, -this->fallVelocity * dt,0));
+//
+//   }
+//   else
+//   {
+//     this->fallVelocity = 0.0f;
+//   }
 
 }
Index: branches/single_player_map/src/world_entities/world_entity.cc
===================================================================
--- branches/single_player_map/src/world_entities/world_entity.cc	(revision 9032)
+++ branches/single_player_map/src/world_entities/world_entity.cc	(revision 9035)
@@ -82,5 +82,5 @@
 
   // registering default reactions:
-  this->subscribeReaction(CREngine::CR_OBJECT_DAMAGE, CL_WORLD_ENTITY);
+  this->subscribeReaction(CREngine::CR_OBJECT_DAMAGE, /*CL_WORLD_ENTITY*/ CL_PROJECTILE);
 
   this->toList(OM_NULL);
