Example #1
0
 public void ResetCooldown()
 {
     State = PointGeneratorState.Cooldown;
     cooldownTimer.Restart();
     cooldownTimer.Duration = cooldown + UnityEngine.Random.Range(-cooldownRandomModifier, cooldownRandomModifier);
     spriteRenderer.sprite  = cooldownSprite;
 }
Example #2
0
 protected override void OnConstruct()
 {
     this.spriteRenderer = this.GetComponentInChildren <SpriteRenderer>();
     initialSpriteScale  = spriteRenderer.transform.localScale;
     spriteRenderer.transform.localScale = new Vector3(0, 0, 0);
     this.State            = PointGeneratorState.Cooldown;
     cooldownTimer         = new Timer(initialCooldown);
     spriteRenderer.sprite = cooldownSprite;
 }
Example #3
0
    protected override void OnUpdate()
    {
        if (Game.Match.State != MatchState.Playing)
        {
            return;
        }

        if (State == PointGeneratorState.Cooldown)
        {
            durationTime = 0;
            if (cooldownTimer.CheckAndTick(Time.deltaTime))
            {
                State = PointGeneratorState.Full;
                spriteRenderer.transform.localScale = new Vector3(0, 0, 0);
                spriteRenderer.sprite = fullSprite;
            }
        }
        else if (State == PointGeneratorState.Full)
        {
            durationTime += Time.deltaTime;
            float size = Mathf.Clamp(durationTime / growDuration, 0, 1);
            spriteRenderer.transform.localScale = new Vector2(size * initialSpriteScale.x, size * initialSpriteScale.y);
        }
    }