protected void checkForHitRight(Paddle paddle) {
		if (ballX >= (paddle.getX() - ballSize)) {
			if (ballY >= paddle.getY() - ballSize + 1
					&& ballY <= paddle.getY() + paddle.getLength() - 1) {
				hits2++;
				
				dx = left;
				dy = 0; // this is a direct hit
				int paddleCenter = paddle.getY() + paddle.getLength() / 2;
				int ballCenter = ballY + ballSize / 2;
				double offset = ballCenter - paddleCenter;
				double halfPaddle = paddle.getLength()/2;
				//set dx and dy dependent on region of paddle hit
				double angleDeg = 90.0 + 60.0 * (offset/halfPaddle);
				dx = -step * Math.sin(Math.toRadians(angleDeg));
				if (offset < 0) {
					dy = -Math.sqrt(step*step - dx*dx);
				} else if (offset > 0) {
					dy = Math.sqrt(step*step - dx*dx);
				}
			}
		}
	}