code: public List<Collision> collide(Origin origin,
                                     FeatureProvider provider,
                                     Transformable transformable,
                                     Collidable other,
                                     Collection<Integer> accepted)
      {
          final List<Collision> collisions = new ArrayList<>();
          if (enabled && other.isEnabled() && accepted.contains(other.getGroup()))
          {
              final int size = cacheColls.size();
              for (int i = 0; i < size; i++)
              {
                  final Collision collision = collide(origin,
                                                      provider,
                                                      transformable,
                                                      other,
                                                      cacheColls.get(i),
                                                      cacheRect.get(i));
                  if (collision != null)
                  {
                      collisions.add(collision);
                  }
              }
          }
          return collisions;
      }
docs: Check if the collidable entered in collision with another one.
  
  @param origin The origin used.
  @param provider The provider owner.
  @param transformable The transformable owner.
  @param other The collidable reference.
  @param accepted The accepted groups.
  @return The collisions found if collide.