Whats wrong with Camera.main.ScreenToWorldPoint(Input.mousePosition)?
public float rz;
public GameObject MyPlayer;
public SpriteRenderer sr;
public PhotonView view;
private void Start()
{
view = GetComponent<PhotonView>();
}
private void Update()
{
moveSword();
}
[PunRPC]
void moveSword()
{
Vector3 diffrence = Camera.main.ScreenToWorldPoint(Input.mousePosition) - transform.position;
diffrence.Normalize();
float rotationz = Mathf.Atan2(diffrence.y, diffrence.x) * Mathf.Rad2Deg;
rz = rotationz;
transform.rotation = Quaternion.Euler(0f, 0f, rotationz - 90);
if (rotationz < 180 && rotationz > 0)
{
sr.sortingOrder = -5;
}
else
{
sr.sortingOrder = 1;
}
if (rotationz < -90 || rotationz > 90)
{
if (MyPlayer.transform.eulerAngles.y == 0)
{
transform.localRotation = Quaternion.Euler(180, 0, -rotationz - 90);
}
else if (MyPlayer.transform.eulerAngles.y == 180)
{
transform.localRotation = Quaternion.Euler(180, 180, -rotationz - 90);
}
}
}
Answers
-
Yes, what's wrong with it?
0