コード例 #1
0
    public void OnReceivedDamages(int delta, int remainingLife, GameObject damageInstigator)
    {
        //print("Remaining life : " + remainingLife);
        if (isJumping)
        {
            EndJumping();
            if (!jumpDurationSystem.TimerOver)
            {
                jumpDurationSystem.EndTimer();
            }
        }

        float xOffset = transform.position.x - damageInstigator.transform.position.x;

        currentHorizontalSpeed = onDamagedHorizontalSpeed * Mathf.Sign(xOffset);
        currentVerticalSpeed   = onDamagedVerticalSpeed;

        lifeSystem.SetImmuneToDamages();

        stunTimer.StartTimer();
        recoveringTimer.StartTimer();

        PlayDamagedFeedback();
        OnCharacterReceivedDamage?.Invoke();
    }