示例#1
0
    public void TryLockPins()
    {
        if (Time.time - _lastIntendedUnlock < _intendedUnlockCd)
        {
            return;
        }

        Shake.Play(Vector3.right * 0.25f);

        if (!_pinLine.TryLockPins())
        {
            int numPins = 0;
            foreach (var pin in _allPins)
            {
                if (pin.GetState() == Pin.State.Locked)
                {
                    pin.Move(new Vector2(0.0f, -_wrongClickPenality));
                    pin.PlayMoveParticles();

                    numPins++;
                }
            }

            if (numPins > 0)
            {
                PlaySound(_wrongClickSfx);
            }

            else
            {
                PlaySound(_emptyClickSfx);
            }
        }

        else
        {
            _lockParticles.Play();
        }
    }