using System.Collections; using System.Collections.Generic; using UnityEngine; public class Cover3DVrotate : MonoBehaviour { public int numpos; [SerializeField] float eulerAngX; [SerializeField] float eulerAngY; [SerializeField] float eulerAngZ; public float angle = 80; void Start() { eulerAngX = transform.localEulerAngles.x; eulerAngY = transform.localEulerAngles.y; eulerAngZ = transform.localEulerAngles.z; } public void Rotate(int numpos) { if (numpos == 1 && this.name == "Cover1_0701_3D" || this.name == "Cover2_0701_3D") this.transform.localRotation = Quaternion.Euler(eulerAngX, eulerAngY + angle, eulerAngZ); else if (numpos == 1 && this.name == "Cover1_0702_3D" || this.name == "Cover2_0702_3D") this.transform.localRotation = Quaternion.Euler(eulerAngX, eulerAngY - angle, eulerAngZ); else if (numpos == 1 && this.name == "Cover3_0701_3D" || this.name == "Cover3_0702_3D") this.transform.localRotation = Quaternion.Euler(eulerAngX-2*angle, eulerAngY, eulerAngZ); else if (eulerAngX != 0 && eulerAngX >0 && eulerAngX < 360) { if (numpos == 1) this.transform.localRotation = Quaternion.Euler(eulerAngX + angle, eulerAngY, eulerAngZ); //if (numpos == 2) this.transform.localRotation = Quaternion.Euler(eulerAngX, eulerAngY, eulerAngZ); } else if (eulerAngY != 0 && eulerAngY > 0 && eulerAngY < 360) { if (numpos == 1) this.transform.localRotation = Quaternion.Euler(eulerAngX, eulerAngY + angle, eulerAngZ); //if (numpos == 2) this.transform.localRotation = Quaternion.Euler(eulerAngX, eulerAngY, eulerAngZ); } else if (eulerAngZ != 0 && eulerAngZ > 0 && eulerAngZ < 360) { if (numpos == 1) this.transform.localRotation = Quaternion.Euler(eulerAngX, eulerAngY, eulerAngZ + angle); } if (numpos == 2) this.transform.localRotation = Quaternion.Euler(eulerAngX, eulerAngY, eulerAngZ); } }