Exemplo n.º 1
0
    private void KnockBack()
    {
        KnockStunSystem targetKnock = target.GetComponent <KnockStunSystem>();
        float           directionX  = new Vector2(sourceCaster.transform.position.x - target.transform.position.x, 0).normalized.x;

        targetKnock.KnockStun(target, directionX, knockBackForce);
    }
Exemplo n.º 2
0
    /// <summary>
    /// 自身受到超過KB值的傷害,會被擊退
    /// </summary>
    private void KnockBackCheck(float damageDirectionX, float knockBackForce)
    {
        float              knockbackDamage = data.knockBackDamage.Value;
        string             dscName         = CumulativeDataController.Cumulative_DamageTake_KnockBack;
        CumulativeDataType dscType         = CumulativeDataType.Take;

        if (cumulativeDataController.GetData(dscName, dscType) >= knockbackDamage && damageDirectionX != 0)
        {
            knockBackSystem.KnockStun(this, damageDirectionX, knockBackForce);
            cumulativeDataController.ModifyData(dscName, dscType, 0);
        }
    }