Esempio n. 1
0
 void Start()
 {
     value                      = initValue;
     spriteRenderer             = GetComponent <SpriteRenderer>();
     lastStep                   = null;
     runningTransitionCoroutine = null;
 }
Esempio n. 2
0
    //Called by the map manager
    public void UpdateValue(bool increase)
    {
        //Update Values
        if (increase)
        {
            value = value + (Time.deltaTime * dataIncreaseTimeMuliplier);
        }
        else
        {
            value = Mathf.Max(0, value - (Time.deltaTime * dataDecreaseTimeMuliplier));
        }

        //Check for step changing
        int i = 0;

        while (i < steps.Length && value > steps[i].value)
        {
            i++;
        }
        if (i == 0)
        {
            i++;
        }

        TileStep nextStep = steps[i - 1];

        if (lastStep == null)
        {
            spriteRenderer.sprite = nextStep.sprite;
        }
        else if (lastStep.sprite != nextStep.sprite)
        {
            ProcessSpriteTransition(lastStep.sprite, nextStep.sprite);
        }
        lastStep = nextStep;
    }