void WorldManager::updateObjects() { Ball *ball = mWorld->getBall(); Paddle *leftPlayer = mWorld->getLeftPlayer(); Paddle *rightPlayer = mWorld->getRightPlayer(); if (isBallHitByLeftPaddle() || isBallHitByRightPaddle()) { ball->reverseHorizontalDirection(); putBallAtPaddleEdge(); ball->setSpeed(ball->getSpeed() + SPEED_INC_STEP); leftPlayer->setSpeed(leftPlayer->getSpeed() + SPEED_INC_STEP); rightPlayer->setSpeed(rightPlayer->getSpeed() + SPEED_INC_STEP); } if (isBallCollideWithTopWall() || isBallCollideWithBottomWall()) { ball->reverseVerticalDirection(); putBallAtWallEdge(); } if (isBallCollideWithLeftWall() || isBallCollideWithRightWall()) { ball->reset(); leftPlayer->reset(); rightPlayer->reset(); } }
void Game::nextRound(Paddle &player, Paddle &cpu, Ball &ball) { player.reset(); cpu.reset(); ball.reset(); }