using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using TMPro; using System.Threading.Tasks; using Unity.VisualScripting; public class CameraManager : MonoBehaviour { [SerializeField] Button Btn; [SerializeField] Transform trans; [SerializeField] Vector3 tempPos; [SerializeField] Transform Player; Vector3 RotePos; public bool isGang = false; FirstPersonController f; int sum = 1; public string tips; public int id; public int score; //TextMeshProUGUI text; private async void Start() { await Task.Delay(100); BtnOnClick(UIManager.Instance.bottomCotroller.BirdEyeView); UIManager.Instance.toolsItemManager.SwitchAllToolItems(); //f = Player.transform.GetComponent(); } /// /// µ÷Óø©î«¸³Öµ /// /// public void BtnOnClick(Toggle to) { to.gameObject.SetActive(true); to.onValueChanged.AddListener((isOn) => { GetComponent().CompletedorNot = true; //if (sum % 2 != 0) //{ // OverLook(); //} //else //{ // ReturnLook(); //} //sum++; if (isOn) { OverLook(); } else { ReturnLook(); } }); } void OverLook() { f.cameraCanMove = false; f.rb.useGravity = false; f.enabled = false; f.GetComponent().constraints = RigidbodyConstraints.FreezeAll; f.yaw = 0; f.pitch = 0; tempPos = Player.transform.localPosition; RotePos = Player.transform.localEulerAngles; Player.transform.localPosition = trans.localPosition; Player.transform.localEulerAngles = trans.localEulerAngles; f.playerCamera.transform.localEulerAngles = Vector3.zero; //f.AddComponent(); } void ReturnLook() { Player.transform.localPosition = tempPos; Player.transform.localEulerAngles = RotePos; f.GetComponent().constraints = RigidbodyConstraints.FreezeRotation; //f.playerCamera.transform.localEulerAngles = Vector3.zero; f.rb.useGravity = true; f.enabled = true; f.cameraCanMove = true; } }