private void UpdateMagnetism() { if (Is(Effect.Magnetism)) { ContactFilter2D filter = new ContactFilter2D(); filter.SetLayerMask(LayerMask.GetMask("Enemy")); List <Collider2D> colliders = new List <Collider2D>(); Physics2D.OverlapCircle(transform.position, repulsionRange, filter, colliders); if (colliders.Count > 0) { foreach (Collider2D collider in colliders) { EnemyHandler closeEnemy = collider.GetComponent <EnemyHandler>(); Vector2 direction = closeEnemy.transform.position - transform.position; direction.Normalize(); closeEnemy.Propel(direction * repulsionForce, true, true); } } } }