Example #1
0
    public override void OnDamage(int damage, Vector2 hitPoint, Vector2 normal, float power = 1f)
    {
        rigid.velocity = Vector2.zero;
        rigid.AddForce(normal * -damage * 2 + new Vector2(0, 3f), ForceMode2D.Impulse);
        slimeAnim.SetHit();
        base.OnDamage(damage, hitPoint, normal);

        ai.SetHit(); // 일시적으로 ai 정지 및 일정시간후 다시 돌아옴
    }
Example #2
0
    public override void OnDamage(int damage, Vector2 hitPoint, Vector2 normal)
    {
        rigid.AddForce(-normal * damage * 2, ForceMode2D.Impulse);
        anim.SetHit();
        base.OnDamage(damage, hitPoint, normal);

        BloodParticle bp = PoolManager.GetItem <BloodParticle>();

        bp.SetRotation(normal);
        bp.SetParticleColor(hitColor);
        bp.Play(hitPoint);
    }