Ejemplo n.º 1
0
 // Use this for initialization
 void Start()
 {
     Player            = GameObject.FindGameObjectWithTag("Player");
     Camera            = GameObject.FindGameObjectWithTag("MainCamera");
     CollectableScript = Player.GetComponent <Collectables>();
     CamScript         = Camera.GetComponent <NewCameraScript>();
     Menu.SetActive(false);
     Time.timeScale = 1;
 }
    // Update is called once per frame
    void Update()
    {
        Scene  currentScene = SceneManager.GetActiveScene();
        string sceneName    = currentScene.name;

        if (moon == null)
        {
            moon = RotateOverTime.instance.moon.transform;
        }
        else if (sun == null)
        {
            sun = RotateOverTime.instance.sun.transform;
        }
        if (sun != null && moon != null)
        {
            if (sceneName == "NewDankMenu")
            {
                float   zoom = Camera.main.transform.position.z;
                Vector3 val  = Camera.main.transform.position.normalized * -1 * (change);
                //    Vector3 val = new Vector3(otherchange, 0, change);
                this.transform.position = val;
                transform.LookAt(Vector3.zero);
                Vector3 sunDirection    = sun.position.normalized;
                Vector3 moonDirection   = moon.position.normalized;
                Vector3 cameraDirection = Vector3.back;
                if ((sunDirection - cameraDirection).magnitude <= (moonDirection - cameraDirection).magnitude) //closer to sun
                {
                    float distance = (sunDirection - cameraDirection).magnitude / 1.4f;                        //value from 0-1
                    sr.color = Color.Lerp(dayColour, intermediaryColour, distance);
                }
                else //closer to moon
                {
                    float distance = (moonDirection - cameraDirection).magnitude / 1.4f; //value from 0-1
                    sr.color = Color.Lerp(nightColour, intermediaryColour, distance);
                }
            }



            else
            {
                this.gameObject.transform.SetParent(Camera.main.transform.root);
                NewCameraScript temp = Camera.main.transform.root.GetComponent <NewCameraScript>();
                float           zoom = -temp.holderDistance;
                this.transform.localPosition = new Vector3(0, 0, 300 - zoom);

                transform.localRotation = Camera.main.transform.parent.localRotation;
                Vector3 sunDirection    = sun.position.normalized;
                Vector3 moonDirection   = moon.position.normalized;
                Vector3 cameraDirection = temp.transform.position.normalized;
                if ((sunDirection - cameraDirection).magnitude <= (moonDirection - cameraDirection).magnitude) //closer to sun
                {
                    float distance = (sunDirection - cameraDirection).magnitude / 1.4f;                        //value from 0-1
                    sr.color = Color.Lerp(dayColour, intermediaryColour, distance);
                }
                else //closer to moon
                {
                    float distance = (moonDirection - cameraDirection).magnitude / 1.4f; //value from 0-1
                    sr.color = Color.Lerp(nightColour, intermediaryColour, distance);
                }
            }
        }
    }