| 181 | } |
| 182 | |
| 183 | void CIKLimbsController::ObjectShift(float static_shift, const SCalculateData cd[max_size]) |
| 184 | { |
| 185 | u16 cnt_in_step = 0; |
| 186 | const u16 sz = (u16)_bone_chains.size(); |
| 187 | for (u16 j = 0; sz > j; ++j) |
| 188 | if (cd[j].m_limb->foot_step()) |
| 189 | ++cnt_in_step; |
| 190 | |
| 191 | VERIFY(smart_cast<CPhysicsShellHolder*>(m_object)); |
| 192 | // CCharacterPhysicsSupport *ch = sh->character_physics_support(); |
| 193 | _object_shift.freeze(!!Device.Paused()); // ch->is_interactive_motion() || |
| 194 | |
| 195 | if (cnt_in_step != sz && PredictObjectShift(cd)) // cnt_in_step > 0 && |
| 196 | return; |
| 197 | StaticObjectShift(cd); |
| 198 | } |
| 199 | |
| 200 | void CIKLimbsController::ShiftObject(const SCalculateData cd[max_size]) |
| 201 | { |