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();

    }