public void CreateHingeJoint(Pax4ObjectPhysicsPart p_child, bool p_disableChildController, JVector p_hingePositionParent, JVector p_hingeAxis) { if (_body == null || p_child == null) { return; } if (_hingeJoint == null) { _hingeJoint = new Dictionary <Pax4ObjectPhysicsPart, HingeJoint>(); } if (p_disableChildController) { p_child.DisableConstraint(); } HingeJoint hingeJoint = new HingeJoint(Pax4World._current._physicsSystem, this._body, p_child._body, p_hingePositionParent, p_hingeAxis); p_child._hingeJointParent = this; _hingeJoint.Add(p_child, hingeJoint); }
public void SetPhysicsPart(Pax4ObjectPhysicsPart p_physicsPart) { if (p_physicsPart == null) { return; } p_physicsPart.DisableConstraint(); _physicsPart = p_physicsPart; _physicsPart.AddConstraint(this); }
public void SetPhysicsPart(Pax4ObjectPhysicsPart p_physicsPart, int p_wayPointIndex = 0) { if (p_physicsPart == null) { return; } p_physicsPart.DisableConstraint(); _physicsPart = p_physicsPart; _physicsPart.AddConstraint(this); if (_wayPointPath == null) { return; } _wayPointIndex = p_wayPointIndex; _worldHeading = _wayPointPath._wayPoint[_wayPointIndex] - _physicsPart._body.Position; _currentDistance = _worldHeading.Length(); }