Exemple #1
0
    private void OnEnable()
    {
        _flicker = GetComponent <SpriteFlicker> ();

        _enemy           = GetComponentInParent <EnemyProperty> ();
        _enemy.OnDamage += StartFlicker;
    }
Exemple #2
0
    private void StartFlicker(EnemyProperty enemyProperty)
    {
        SpriteFlicker flicker = enemyProperty.m_enemySprite.GetComponent <SpriteFlicker> ();

        if (flicker == null)
        {
            Debug.LogErrorFormat("The {0} enemy doesn't have a SpriteFlicker component!", enemyProperty.gameObject.name);
        }

        StopAllCoroutines();
        StartCoroutine(Flickering(flicker));
    }
Exemple #3
0
    private IEnumerator Flickering(SpriteFlicker flicker)
    {
        flicker.m_bindFactor   = m_flickerBindFactor;
        flicker.m_flickerColor = m_flickerColor;

        float flickTime = m_flickerTime;
        float timer     = 0f;

        while (timer < flickTime)
        {
            timer += JITimer.Instance.DeltTime;
            yield return(null);
        }

        flicker.m_bindFactor = 0;
    }