Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var target : Transform; //Variable "target" wird durch ein reinzieh-Feld definiert
- var smoothTime = 5;
- var rotationTime = 0.2;
- var xOffset : float = 1.0;
- var yOffset : float = 1.0;
- var look_speed = 0.2;
- var look_distance = 5;
- var mainCamera : Transform;
- static var mouseposition_y : float;
- static var mouseposition_x : float;
- private var thisTransform : Transform;
- var hitposition : Vector3;
- function Start()
- {
- thisTransform = transform;
- }
- function Update ()
- {
- Debug.Log (hitposition);
- }
- function LateUpdate()
- {
- //Raycast
- var ray : Ray = Camera.main.ScreenPointToRay(Input.mousePosition); //Ray erstellen
- var hit : RaycastHit; //Hit erstellen, der uns gleich mit Daten über den "Einschlag" beliefert
- if (Physics.Raycast(ray, hit))
- {
- var hitposition = (hit.point);
- }
- var mouseposition_x = (ray.direction.x) ;
- var mouseposition_y = (ray.direction.y) ;
- //Follow Player
- thisTransform.position.x = Mathf.Lerp( thisTransform.position.x, target.position.x + xOffset + mouseposition_x * look_distance, Time.deltaTime * smoothTime);
- thisTransform.position.y = Mathf.Lerp( thisTransform.position.y, target.position.y + yOffset + mouseposition_y * look_distance, Time.deltaTime * smoothTime);
- //Rotation des targets (Player) wenn Maus auf der linken Seite ist
- if (mouseposition_x > 0)
- {
- //rechts
- target.transform.rotation = Quaternion.Slerp(target.transform.rotation, (Quaternion.AngleAxis(90, Vector3.up)),Time.deltaTime * rotationTime);
- }
- else
- {
- //links
- target.transform.rotation = Quaternion.Slerp(target.transform.rotation, (Quaternion.AngleAxis(-90, Vector3.up)),Time.deltaTime * rotationTime);
- }
- /*
- Debug.Log (hitposition);
- hitposition.y = 0;
- hitposition.z = 0;
- target.transform.LookAt(hitposition);
- */
- }
Add Comment
Please, Sign In to add comment