示例#1
0
    protected override void OnHit(Projectile.DamageModel damage, Projectile.HitData hitData)
    {
        Vector2 particleVelocity = Vector2.zero;

        Rigidbody2D body = GetComponent <Rigidbody2D>();

        if (body != null)
        {
            particleVelocity = body.velocity;
        }

        DeathParticleEffect emitter = (Instantiate(ParticleEffect, transform.position, Quaternion.identity) as GameObject).GetComponent <DeathParticleEffect>();

        emitter.Spawn(hitData.HitPosition, hitData.Direction * 10f, particleVelocity * 5f, hitData.Force, 120f, 20f, 120);

        Debug.DrawLine(transform.position, hitData.HitPosition, Color.red, 3f);
        Destroy(gameObject);
    }
示例#2
0
 public void InvokeHit(Projectile.DamageModel damage, Projectile.HitData hitData)
 {
     OnHit(damage, hitData);
 }
示例#3
0
 protected abstract void OnHit(Projectile.DamageModel damage, Projectile.HitData hitData);