// Use this for initialization void Start() { cam = Camera.main; transform.position = cam.transform.position - (Vector3)startOffset; targetPos = transform.position; targetRotation = transform.rotation.eulerAngles.z; ui = cam.GetComponent <CamUI>(); }
public void CheckClearance() { if (IKactive)//& legMode == LegMode.Translate) { //limbMirror.contactPoint.position = limbMirror.servoWrist.transform.TransformPoint(memoryBridge.GetVector3(limbMirror.servoWrist.servoName + "CollisionPoint")); // limbIK.contactPoint.position = limbIK.servoWrist.transform.TransformPoint(memoryBridge.GetVector3(limbMirror.servoWrist.servoName + "CollisionPoint")); } torque = memoryBridge.GetVector3(limbMirror.servoWrist.servoName + "torque"); velocity = torque.magnitude; explosionPotential = memoryBridge.GetFloat(limbMirror.servoWrist.servoName + "explosionPotential"); gExplodeChance = memoryBridge.GetFloat(limbMirror.servoWrist.servoName + "gExplodeChance"); footActive = memoryBridge.GetBool(limbMirror.servoWrist.servoName + "active"); hasExploded = memoryBridge.GetBool(limbMirror.servoWrist.servoName + "exploded"); if (hasExploded) { CamUI.SetCamText(name + " has exploded"); Debug.LogError("Exploded Leg : " + name + " Velocity : " + velocity + " Mode : " + limbIK.gaitSequenceMode.ToString() + " Percent : " + CalculateStridePercent()); } rawClearance = memoryBridge.GetFloat(limbMirror.servoWrist.servoName + "KSPFootClearance"); //if(limbMirror.limbEnd == null) //{ // Debug.Log("end point null"); //} var contactPointOffSet = limbMirror.servoWrist.transform.position.y - limbMirror.trueLimbEnd.position.y; footClearance = rawClearance - contactPointOffSet; if (footClearance < .03f) { footClearance = 0; } groundContact = memoryBridge.GetBool(limbMirror.servoWrist.servoName + "GroundContact"); //if (!collisionPoint) //{ // collisionPoint = new GameObject("CollisionPoint").transform; // // DebugVector.DrawVector(collisionPoint, DebugVector.Direction.all, .5f, .1f, Color.red, Color.white, Color.blue); //} //collisionPoint.position = limbMirror.servoWrist.transform.TransformPoint(memoryBridge.GetVector3(limbMirror.servoWrist.servoName + "CollisionPoint")); // limbMirror. //if(limbIK) //if (!groundContact) // ground.position = limbMirror.servoWrist.transform.position - new Vector3(0, rawClearance, 0); var localPoint = limbMirror.limbEnd.localPosition - new Vector3(0, .4f, 0); ground.position = limbMirror.servoWrist.transform.TransformPoint(localPoint) - new Vector3(0, rawClearance, 0); }