Esempio n. 1
0
    // Start is called before the first frame update
    void Start()
    {
        mouvementManager = transform.parent.GetComponent <EnemyMouvementManager>();
        mouvementManager.enemies.Add(gameObject);
        enemyValue            = mouvementManager.LineEnemyValue;
        minShootTime          = mouvementManager.minShootTime;
        maxShootTime          = mouvementManager.maxShootTime;
        enemyWidth            = GetComponent <SpriteRenderer>().bounds.size.x;
        animator              = GetComponent <Animator>();
        spriteRenderer        = GetComponent <SpriteRenderer>();
        animator.enabled      = false;
        spriteRenderer.sprite = originalSprite;
        collider              = GetComponent <BoxCollider2D>();

        screenBounds = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width, Screen.height, Camera.main.transform.position.z));

        FeatureManager.instance.onSpritesToggle += () =>
        {
            if (this)
            {
                if (!FeatureManager.instance.isSpriteOn)
                {
                    spriteRenderer.sprite = originalSprite;
                }
                else
                {
                    spriteRenderer.sprite = coolSprite;
                }
            }
        };
        FeatureManager.instance.onAnimationsToggle += () =>
        {
            if (this)
            {
                if (FeatureManager.instance.isAnimationOn)
                {
                    animator.enabled = true;
                }
                else
                {
                    animator.enabled      = false;
                    spriteRenderer.sprite = coolSprite;
                }
            }
        };
    }
Esempio n. 2
0
 public void RemoveEnemyMouvementManager(EnemyMouvementManager lineToRemove)
 {
     enemiesMouvementManager.Remove(lineToRemove);
     CheckDistanceWithPlayer();
 }