示例#1
0
    // Set random colour state
    private void setRandomColourState()
    {
        int selectionNum = Random.Range(0, 3);

        // Depending on the selection num determine the current colour state
        switch (selectionNum)
        {
        case 0:
            currentColourState = ColourStates.Red;
            break;

        case 1:
            currentColourState = ColourStates.Green;
            break;

        case 2:
            currentColourState = ColourStates.Blue;
            break;

        default:
            currentColourState = ColourStates.Red;
            break;
        }

        // Depending on the colour state determine the material for this paddle
        applyColourStateSettings(currentColourState);
    }
示例#2
0
    // Set the colour state
    private void setColourState(ColourStates newColourState)
    {
        // Set the current colour state as the new colour state parameter
        currentColourState = newColourState;

        // Set the material of the mesh based on the new colour state
        switch (newColourState)
        {
        case ColourStates.Red:
            targetVisualColour = possibleVisualColourTargets[0];
            break;

        case ColourStates.Green:
            targetVisualColour = possibleVisualColourTargets[1];
            break;

        case ColourStates.Blue:
            targetVisualColour = possibleVisualColourTargets[2];
            break;

        default:
            targetVisualColour = possibleVisualColourTargets[0];
            break;
        }
    }
示例#3
0
    void RainbowCycle()
    {
        switch (_colourStates)
        {
        case ColourStates.r:
            _colour.b -= 0.01f;
            SetColour();
            if (_colour.r >= 1 && _colour.b <= 0)
            {
                _colourStates = ColourStates.rg;
            }
            return;

        case ColourStates.rg:
            _colour.g += 0.01f;
            SetColour();
            if (_colour.r >= 1 && _colour.g >= 1)
            {
                _colourStates = ColourStates.g;
            }
            return;

        case ColourStates.g:
            _colour.r -= 0.01f;
            SetColour();
            if (_colour.r <= 0 && _colour.g >= 1)
            {
                _colourStates = ColourStates.gb;
            }
            return;

        case ColourStates.gb:
            _colour.b += 0.01f;
            SetColour();
            if (_colour.g >= 1 && _colour.b >= 1)
            {
                _colourStates = ColourStates.b;
            }
            return;

        case ColourStates.b:
            _colour.g -= 0.01f;
            SetColour();
            if (_colour.g <= 0 && _colour.b >= 1)
            {
                _colourStates = ColourStates.br;
            }
            return;

        case ColourStates.br:
            _colour.r += 0.01f;
            SetColour();
            if (_colour.b >= 1 && _colour.r >= 1)
            {
                _colourStates = ColourStates.r;
            }
            return;
        }
    }
示例#4
0
    private void Start()
    {
        _colour.r = 1f;
        _colour.g = 0f;
        _colour.b = 0f;
        _colour.a = 1f;

        _rend = GetComponent <Renderer>();

        _rend.material.shader = Shader.Find("MK/Glow/Selective/Self-Illumin/Diffuse");
        _rend.material.SetColor("_Color", _colour);
        _rend.material.SetColor("_MKGlowTexColor", _colour);
        _rend.material.SetColor("_MKGlowColor", _colour);

        _colourStates = ColourStates.r;
    }
示例#5
0
    // Apply Colour state settings
    private void applyColourStateSettings(ColourStates colourState)
    {
        if (currentColourState == ColourStates.Red)
        {
            targetVisualColour = redPaddleColour;
        }

        else if (currentColourState == ColourStates.Green)
        {
            targetVisualColour = greenPaddleColour;
        }

        else if (currentColourState == ColourStates.Blue)
        {
            targetVisualColour = bluePaddleColour;
        }
    }
示例#6
0
    // Select new colour state
    public void selectNewColourState()
    {
        Random.InitState((int)System.DateTime.Now.Millisecond);
        ColourStates chosenColourState;

        do
        {
            // Select a random colour state
            int result = Random.Range(0, 3);
            switch (result)
            {
            case 0:
                chosenColourState = ColourStates.Red;
                break;

            case 1:
                chosenColourState = ColourStates.Blue;
                break;

            case 2:
                chosenColourState = ColourStates.Green;
                break;


            default:
                chosenColourState = ColourStates.Red;
                break;
            }
        } while (chosenColourState == player.getCurrentColourState());

        // Set the chosen colour state as the current one
        // Apply colour state settings
        currentColourState = chosenColourState;
        applyColourStateSettings(currentColourState);

        shineLightComp.gameObject.SetActive(true);
    }
示例#7
0
 public void setCurrentColourState(ColourStates currentColourState)
 {
     this.currentColourState = currentColourState;
 }