public override void OnTriggerEnter2D(Collider2D collision)
{
if (collision.tag == "Player" && collision.GetComponent<PhotonView>().Owner.UserId == OwnerID || collision.tag == "Item")
{
Debug.LogError("collision 2");
return;
}
GameObject exFfector = Instantiate(ExplosionEffector, transform.position, Quaternion.identity);
exFfector.GetComponent<CircleCollider2D>().radius = propagationRange;
List<Collider2D> colliders = new List<Collider2D>();
exFfector.GetComponent<CircleCollider2D>().OverlapCollider(new ContactFilter2D(), colliders);
foreach (Collider2D collider in colliders)
{
if (Physics2D.Linecast(transform.position, collider.transform.position, 12))
{
return;
}
else
{
IDamageable comp;
if (collider.TryGetComponent<IDamageable>(out comp))
{
comp.takeDamage(Damage, OwnerID, FromItem);
}
}
}
Destroy(exFfector, 0.5f);
OnThisDestroy();
}