Problem with Mouselook script
Hello, I'm trying to get this mouselook script to work, but whenever it gets to a rotation of zero, it resets to the positive clamp value (Note: I haven't implemented input yet, I've been using Update to test it)
Script:
using UnityEngine;
using System.Collections;
public class PlayerMouseMovement : MonoBehaviour {
PlayerMain MousePlayerMain;
public GameObject PlayerCamera;
public float YClampMax;
public float YClampMin;
public float XClampMax;
public float XClampMin;
public bool YInverted;
public int XSensitivity;
public int YSensitivity;
void SetReferences()
{
if (gameObject.GetComponent<PlayerMain>() != null)
MousePlayerMain = gameObject.GetComponent<PlayerMain>();
else
Debug.LogWarning(gameObject.name + " does not have a PlayerMain script!");
}
void Input()
{
}
void MoveXAngle(float amount)
{
if (XClampMin != 0 || XClampMax != 0)
{
float r = amount + gameObject.transform.rotation.eulerAngles.y;
r = Mathf.Clamp(r, XClampMin, XClampMax);
r -= gameObject.transform.rotation.eulerAngles.y;
Debug.Log(r);
amount = r;
}
gameObject.transform.Rotate(new Vector3(0, amount, 0));
}
void MoveYAngle(float amountY)
{
if (YClampMin != 0 || YClampMax != 0)
{
float b = amountY + PlayerCamera.transform.rotation.eulerAngles.x;
b = Mathf.Clamp(b, YClampMin, YClampMax);
Debug.Log(b);
b -= PlayerCamera.transform.rotation.eulerAngles.x;
amountY = b;
}
PlayerCamera.transform.Rotate(new Vector3(amountY, 0, 0));
}
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
Thank you in advance.
Comment
Your answer
Follow this Question
Related Questions
How to rotate bone within mouse movement? 0 Answers
How would i change my mouse cursor in between scenes 0 Answers
Can you help me understand this script 0 Answers
[C#]detect object on mouse look? 1 Answer