boolean Sit_Down(float dt) {
	  int i;
	  int legup=0;
	  float scale=1.0f;

	  // we've planted all feet, lower the body to the ground
	  if( body.pos.z > 0 ) body.pos.z -= 2 * scale * dt;
	  else {
	    for( i = 0; i < 6; ++i ) {

	      // raise feet
	      Vector3f ls = new Vector3f( legs[i].ankle_joint.pos );
	      ls.sub( legs[i].pan_joint.pos );
	      if( ls.length() < 16 ) {
	        ls.z=0;
	        ls.normalize();
	        ls.scale( 4 * scale * dt );
	        legs[i].ankle_joint.pos.add( ls );
	      } else ++legup;

	      if( legs[i].ankle_joint.pos.z-legs[i].pan_joint.pos.z < 5.5 ) legs[i].ankle_joint.pos.z += 4 * scale * dt;
	      else ++legup;

	      if( legs[i].knee_joint.pos.z-legs[i].pan_joint.pos.z < 5.5 ) legs[i].knee_joint.pos.z += 4 * scale * dt;
	      else ++legup;
	    }
	    if( legup == 6*3 ) return true;
	  }

	  return false;
	}