private void CheckPlayer()
    {
        Collider2D playerCollider = Physics2D.OverlapBox(transform.position, checkPlayerSize, 0, playerLayer);

        if (playerCollider != null)
        {
            if (playerActivationButton == null)
            {
                playerActivationButton   = playerCollider.GetComponent <PlayerActivationButton>();
                playerDevelopmentManager = playerCollider.GetComponent <PlayerDevelopmentManager>();
                if (playerActivationButton)
                {
                    playerActivationButton.CanActivateAbsorption(true);
                }
                else
                {
                    playerActivationButton   = null;
                    playerDevelopmentManager = null;
                }
            }
            else
            {
                if (playerActivationButton.IsReadyForActivationAbsorption())
                {
                    Debug.Log("Поглатить");
                    playerDevelopmentManager.AddShadow(shadowId);
                    playerActivationButton.CanActivateAbsorption(false);
                    CanBeAbsorpted(false);
                }
            }
        }
    }
Esempio n. 2
0
    private void CheckPlayer()
    {
        Collider2D playerCollider = Physics2D.OverlapBox(checkPlayerPoint.position, checkPlayerSize, 0, playerLayer);

        if (playerCollider != null)
        {
            if (playerActivationButton == null)
            {
                playerActivationButton = playerCollider.GetComponent <PlayerActivationButton>();
                if (playerActivationButton)
                {
                    playerActivationButton.CanActivateHatch(true);
                }
                else
                {
                    playerActivationButton = null;
                }
            }
            else
            {
                if (playerActivationButton.IsReadyForActivationHatch())
                {
                    if (!wasOpened)
                    {
                        wasOpened = true;
                        PlaySFX();
                    }
                    OpenBody();
                }
                else
                {
                    CloseBody();
                }
            }
        }
        else
        {
            if (playerActivationButton != null)
            {
                playerActivationButton.CanActivateHatch(false);
                playerActivationButton = null;
            }
            if (wasOpened)
            {
                wasOpened = false;
                PlaySFX();
            }
            CloseBody();
        }
    }