46 if (!_steering->is_off(_steering->_none)) {
47 LVecBase3 old_pos = _ai_char_np.get_pos();
48 LVecBase3 steering_force = _steering->calculate_prioritized();
49 LVecBase3 acceleration = steering_force / _mass;
51 _velocity = acceleration;
53 LVecBase3 direction = _steering->_steering_force;
54 direction.normalize();
56 _ai_char_np.set_pos(old_pos + _velocity) ;
58 if (steering_force.length() > 0) {
59 _ai_char_np.look_at(old_pos + (direction * 5));
60 _ai_char_np.set_h(_ai_char_np.get_h() + 180);
61 _ai_char_np.set_p(-_ai_char_np.get_p());
62 _ai_char_np.set_r(-_ai_char_np.get_r());
65 _steering->_steering_force = LVecBase3(0.0, 0.0, 0.0);
66 _steering->_seek_force = LVecBase3(0.0, 0.0, 0.0);
67 _steering->_flee_force = LVecBase3(0.0, 0.0, 0.0);
68 _steering->_pursue_force = LVecBase3(0.0, 0.0, 0.0);
69 _steering->_evade_force = LVecBase3(0.0, 0.0, 0.0);
70 _steering->_arrival_force = LVecBase3(0.0, 0.0, 0.0);
71 _steering->_flock_force = LVecBase3(0.0, 0.0, 0.0);
72 _steering->_wander_force = LVecBase3(0.0, 0.0, 0.0);