You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

73 lines
1.5 KiB

using UnityEngine;
using System.Collections;
public class trailer : MonoBehaviour {
public float rotationLimit;
public GameObject trailerHook;
public GameObject rotationMimick;
private Rigidbody rb;
public Vector3 centreOfMass;
//private Rigidbody carRb;
// Use this for initialization
void Start () {
rb = GetComponent<Rigidbody> ();
rb.centerOfMass = centreOfMass;
Component[] carColliders = transform.root.GetComponentsInChildren<Collider> ();
foreach (Collider carCol in carColliders){
foreach (Collider carCol2 in carColliders){
if (carCol.enabled && carCol2.enabled)
Physics.IgnoreCollision(carCol, carCol2);
}
}
}
// Update is called once per frame
void Update () {
}
void FixedUpdate(){
transform.position = trailerHook.transform.position;
//rb.MovePosition (trailerHook.transform.position);
Vector3 newRot = transform.rotation.eulerAngles;
//newRot.y = rotationMimick.transform.rotation.eulerAngles.y;
//newRot.x = ClampAngle (newRot.x, -10, 10);
//newRot.z = ClampAngle (newRot.z, -15, 15);
//Debug.Log ("Trailer rot: " + newRot);
//rb.MoveRotation (Quaternion.Euler (newRot));
transform.LookAt (rotationMimick.transform.position);
}
private static float ClampAngle (float angle, float min, float max) {
if (max < -360)
max += 360;
if (max > 360)
max -= 360;
if (min < -360)
min += 360;
if (min > 360)
min -= 360;
if (angle < -360)
angle += 360;
if (angle > 360)
angle -= 360;
return Mathf.Clamp (angle, min, max);
}
}