code: public static <T extends IPositioned & ISized> IntSupplier middleAlignedTo(ISized owner, T other, int offset)
  	{
  		checkNotNull(other);
  		return () -> {
  			return (int) (other.position().y() + Math.ceil(((float) other.size().height() - owner.size().height()) / 2) + offset);
  		};
  	}
docs: Middle aligns the owner to the other.
  
  @param <T> the generic type
  @param other the other
  @param offset the offset
  @return the int supplier