Ejemplo n.º 1
0
    void Update()
    {
        //Set color limits.
        if (b > 1f)
        {
            b = 1f;
        }
        if (r > 1f)
        {
            r = 1f;
        }
        if (g > 1f)
        {
            g = 1f;
        }
        if (b < 0f)
        {
            b = 0f;
        }
        if (r < 0f)
        {
            r = 0f;
        }
        if (g < 0f)
        {
            g = 0f;
        }

        //From r to g.
        if (sMode == SubColorMode.subR)
        {
            r -= Time.deltaTime / slowdown;
            g += Time.deltaTime / slowdown;
            if (r <= 0f)
            {
                r = 0f;
            }
            if (g >= 1f)
            {
                g = 1f;
            }
            if (r == 0f && g == 1f)
            {
                sMode = SubColorMode.subG;
            }
        }
        //From g to b.
        if (sMode == SubColorMode.subG)
        {
            g -= Time.deltaTime / slowdown;
            b += Time.deltaTime / slowdown;
            if (g <= 0f)
            {
                g = 0f;
            }
            if (b >= 1f)
            {
                b = 1f;
            }
            if (g == 0f && b == 1f)
            {
                sMode = SubColorMode.subB;
            }
        }
        //From b to r.
        if (sMode == SubColorMode.subB)
        {
            b -= Time.deltaTime / slowdown;
            r += Time.deltaTime / slowdown;
            if (b <= 0f)
            {
                b = 0f;
            }
            if (r >= 1f)
            {
                r = 1f;
            }
            if (b == 0f && r == 1f)
            {
                sMode = SubColorMode.subR;
            }
        }

        //Apply colors.
        if (GetComponent <MeshRenderer>() != null)
        {
            GetComponent <MeshRenderer>().material.color = new Color(r, g, b, a);
        }
        if (GetComponent <SpriteRenderer>() != null)
        {
            GetComponent <SpriteRenderer>().material.color = new Color(r, g, b, a);
        }
    }
Ejemplo n.º 2
0
    private void DoColors()
    {
        //Set color limits.
        if (b > 1f)
        {
            b = 1f;
        }
        if (r > 1f)
        {
            r = 1f;
        }
        if (g > 1f)
        {
            g = 1f;
        }
        if (b < 0f)
        {
            b = 0f;
        }
        if (r < 0f)
        {
            r = 0f;
        }
        if (g < 0f)
        {
            g = 0f;
        }

        //From r to g.
        if (sMode == SubColorMode.subR)
        {
            r -= fa.deltaTime / slowdown;
            g += fa.deltaTime / slowdown;
            if (r <= 0f)
            {
                r = 0f;
            }
            if (g >= 1f)
            {
                g = 1f;
            }
            if (r == 0f && g == 1f)
            {
                sMode = SubColorMode.subG;
            }
        }
        //From g to b.
        if (sMode == SubColorMode.subG)
        {
            g -= fa.deltaTime / slowdown;
            b += fa.deltaTime / slowdown;
            if (g <= 0f)
            {
                g = 0f;
            }
            if (b >= 1f)
            {
                b = 1f;
            }
            if (g == 0f && b == 1f)
            {
                sMode = SubColorMode.subB;
            }
        }
        //From b to r.
        if (sMode == SubColorMode.subB)
        {
            b -= fa.deltaTime / slowdown;
            r += fa.deltaTime / slowdown;
            if (b <= 0f)
            {
                b = 0f;
            }
            if (r >= 1f)
            {
                r = 1f;
            }
            if (b == 0f && r == 1f)
            {
                sMode = SubColorMode.subR;
            }
        }

        //Apply colors.
        Color newCol = new Color(r, g, b, 1f);

        skyObject.GetComponent <MeshRenderer>().material.color = newCol;
        if (trail != null)
        {
            trail.newColor = newCol;
        }
        if (lNode != null)
        {
            Color darkColor = new Color(newCol.r / 2, newCol.g / 2, newCol.b / 2);
            lNode.lightColour = newCol;
            lNode.darkColour  = darkColor;
        }
    }