public bool collideWith(NicoLabel other) { double thisHeight = this.getHeight() + _space; double otherHeight = other.getHeight() + _space; if (_bOverflow || other.isOverflow()) { return false; } if (_posGroup != other._posGroup) { return false; } if (this.y()+thisHeight <= other.y()) { return false; } if (this.y() >= other.y() + otherHeight) { return false; } if (_posGroup != PosGroupType.Normal) { return true; } if (other.x()+other.getWidth() > this.x()) { return true; } if (-this.x()/(_xSpeed*_scale)*other.getXSpeed()+other.x()+other.getWidth() > 0) { return true; } return false; }