- Home /
Question by
Nick_Rizzo · May 25, 2015 at 12:14 PM ·
c#2dshooter
C# Need to set a limit on rotation
How do I set a limit on how far I can rotate the arm? using UnityEngine; using System.Collections;
public class ArmRotation : MonoBehaviour {
public int rotationOffset = 90;
// Update is called once per frame
void Update () {
// subtracting the position of the player from the mouse position
Vector3 difference = Camera.main.ScreenToWorldPoint (Input.mousePosition) - transform.position;
difference.Normalize (); // normalizing the vector. Meaning that all the sum of the vector will be equal to 1
float rotZ = Mathf.Atan2 (difference.y, difference.x) * Mathf.Rad2Deg; // find the angle in degrees
transform.rotation = Quaternion.Euler (0f, 0f, rotZ + rotationOffset);
}
}
Comment
Answer by HarshadK · May 25, 2015 at 12:19 PM
Here's a quick search result on how to set rotation limits